X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/blobdiff_plain/e895be217c3be6769708da17c9ae87cb22db040e..refs/heads/mdw/progfmt:/src/method-proto.lisp diff --git a/src/method-proto.lisp b/src/method-proto.lisp index e72044e..0a20f39 100644 --- a/src/method-proto.lisp +++ b/src/method-proto.lisp @@ -347,6 +347,15 @@ (defgeneric simple-method-body (method codegen target) (definst convert-to-ilayout (stream :export t) (%class chain-head %expr) + "Expression to convert EXPR to point to its enclosing `ilayout'. + + Given a pointer EXPR which points into a direct instance of CLASS, + specifically to the `ichain' whose head class is CHAIN-HEAD, evaluate the + base address of the enclosing `ilayout' structure. + + The output looks like: + + SOD_ILAYOUT(CLASS, NICK, EXPR)" (format stream "SOD_ILAYOUT(~@<~A, ~_~A, ~_~A~:>)" class (sod-class-nickname chain-head) expr))