X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/1622ed8e30b05ba9025520cde3e68d186c8c7e50..4c35de3a0467a4cab5ec7a0d76f99de764ddc316:/doc/layout.tex diff --git a/doc/layout.tex b/doc/layout.tex index c52989c..cdad468 100644 --- a/doc/layout.tex +++ b/doc/layout.tex @@ -69,6 +69,13 @@ \end{describe} \begin{describe}{gf} + {find-class-initializer @ @ @> @} +\end{describe} + +\begin{describe}{gf}{find-slot-initargs @ @ @> @} +\end{describe} + +\begin{describe}{gf} {compute-effective-slot @ @ @> @} \end{describe} @@ -124,7 +131,7 @@ \dhead{gf}{ilayout-ichains @ @> @}} \end{describe*} -\begin{describe}{gf}{sod-class-ilayout @> @} +\begin{describe}{gf}{sod-class-ilayout @ @> @} \end{describe} \begin{describe}{gf}{compute-ilayout @ @> @} @@ -223,6 +230,27 @@ \end{describe*} \begin{describe}{gf} + {sod-message-applicable-methods @ @ @> list} +\end{describe} + +\begin{describe}{gf} + {sod-message-keyword-argument-lists @ @ + @ @ + \nlret @} +\end{describe} + +\begin{describe}{fun} + {compute-effective-method-keyword-arguments @ + @ + @ + \nlret @} +\end{describe} + +\begin{describe}{gf} + {sod-message-check-methods @ @ @} +\end{describe} + +\begin{describe}{gf} {sod-message-effective-method-class @ @> @} \end{describe} @@ -265,6 +293,9 @@ \begin{describe}{gf}{sod-method-next-method-type @ @> @} \end{describe} +\begin{describe}{gf}{sod-method-description @ @> @} +\end{describe} + \begin{describe}{gf}{sod-method-function-name @ @> @} \end{describe} @@ -288,10 +319,13 @@ {effective-method-basic-argument-names @ @> @} \end{describe} +\begin{describe}{gf} + {effective-method-live-p @ @> @} +\end{describe} \begin{describe}{cls} - {method-codegen (codegen) \\ \ind + {method-codegen (codegen) \\ \ind \&key :vars :insts :temp-index :message :class :method :target} \end{describe} @@ -307,9 +341,17 @@ {\dhead{cls}{convert-to-ilayout-inst (inst)} \dhead{fun} {make-convert-to-ilayout-inst @ @ @}} + \def\makelabels#1#2{% + #1{gf}{inst-class}[#2]#1{gf}{inst-chain-head}[#2]% + \descindex{gf}{inst-expr}[#2]% + } + \makelabels{\desclabel}{|(} + \begin{prog} SOD_ILAYOUT(@, @, @) \end{prog} + + \makelabels{\descindex}{|)} \end{describe*} @@ -362,17 +404,17 @@ \end{describe} \begin{describe}{cls} - {daemon-direct-method (basic-direct-method) \\ \ind + {daemon-direct-method (basic-direct-method) \\ \ind \&key :message :location :class :type :body :role} \end{describe} \begin{describe}{cls} - {delegating-direct-method (basic-direct-method) \\ \ind + {delegating-direct-method (basic-direct-method) \\ \ind \&key :message :location :class :type :body :role} \end{describe} \begin{describe}{cls} - {basic-effective-method (effective-method) \\ \ind + {basic-effective-method (effective-method) \\ \ind \&key :message :class :around-methods :before-methods :after-methods} \end{describe} @@ -387,7 +429,7 @@ \end{describe*} \begin{describe}{cls} - {simple-effective-method (basic-effective-method) \\ \ind + {simple-effective-method (basic-effective-method) \\ \ind \&key :message :class :around-methods :before-methods :after-methods :primary-methods} \end{describe} @@ -401,7 +443,7 @@ \end{describe} \begin{describe}{cls} - {standard-effective-method (simple-effective-method) \\ \ind + {standard-effective-method (simple-effective-method) \\ \ind \&key :message :class :around-methods :before-methods :after-methods :primary-methods} \end{describe} @@ -417,7 +459,7 @@ \begin{describe}{gf} {compute-aggregating-message-kernel - \=@ @ @ \+ \\ + \=@ @ @ \+\\ @ @ \&key} \end{describe} @@ -426,21 +468,21 @@ \end{describe} \begin{describe}{cls} - {aggregating-effective-method (simple-effective-method) \\ \ind + {aggregating-effective-method (simple-effective-method) \\ \ind \&key :message :class :around-methods :before-methods :after-methods :primary-methods} \end{describe} \begin{describe}{mac} - {define-aggregating-method-combination @ \\ \ind\ind + {define-aggregating-method-combination @ \\ \ind\ind ((@^*) @[[ :codegen @ @! - :methods @ @]]) \- \\ + :methods @ @]]) \-\\ @[[ \=:properties (@{ (@{ @ @! (@[@@] @) @} @ @[@ - @[@@]@]) @}^*) @! \+ \\ - :return-type @ @! \\ + @[@@]@]) @}^*) @! \+\\ + :return-type @ @! \\ :around @ @! :first-method @ @! :method @ @]]}