src/method-impl.lisp, etc.: Add a `readonly' message property.
[sod] / doc / SYMBOLS
index cd3dbed..7e18dcd 100644 (file)
@@ -41,6 +41,20 @@ c-types-impl.lisp
   c-type-float-complex                          variable
   c-type-float-imaginary                        variable
   c-type-int                                    variable
+  c-type-int-fast16-t                           variable
+  c-type-int-fast32-t                           variable
+  c-type-int-fast64-t                           variable
+  c-type-int-fast8-t                            variable
+  c-type-int-least16-t                          variable
+  c-type-int-least32-t                          variable
+  c-type-int-least64-t                          variable
+  c-type-int-least8-t                           variable
+  c-type-int16-t                                variable
+  c-type-int32-t                                variable
+  c-type-int64-t                                variable
+  c-type-int8-t                                 variable
+  c-type-intmax-t                               variable
+  c-type-intptr-t                               variable
   c-type-long                                   variable
   c-type-long-double                            variable
   c-type-long-double-complex                    variable
@@ -52,6 +66,20 @@ c-types-impl.lisp
   c-type-signed-char                            variable
   c-type-size-t                                 variable
   c-type-tag                                    generic
+  c-type-uint-fast16-t                          variable
+  c-type-uint-fast32-t                          variable
+  c-type-uint-fast64-t                          variable
+  c-type-uint-fast8-t                           variable
+  c-type-uint-least16-t                         variable
+  c-type-uint-least32-t                         variable
+  c-type-uint-least64-t                         variable
+  c-type-uint-least8-t                          variable
+  c-type-uint16-t                               variable
+  c-type-uint32-t                               variable
+  c-type-uint64-t                               variable
+  c-type-uint8-t                                variable
+  c-type-uintmax-t                              variable
+  c-type-uintptr-t                              variable
   c-type-unsigned                               variable
   c-type-unsigned-char                          variable
   c-type-unsigned-long                          variable
@@ -79,6 +107,20 @@ c-types-impl.lisp
   func                                          c-type-form
   cl:function                                   function class c-type-form
   sod-utilities:int                             c-type-spec c-type-form opthandler
+  int-fast16-t                                  c-type-spec c-type-form
+  int-fast32-t                                  c-type-spec c-type-form
+  int-fast64-t                                  c-type-spec c-type-form
+  int-fast8-t                                   c-type-spec c-type-form
+  int-least16-t                                 c-type-spec c-type-form
+  int-least32-t                                 c-type-spec c-type-form
+  int-least64-t                                 c-type-spec c-type-form
+  int-least8-t                                  c-type-spec c-type-form
+  int16-t                                       c-type-spec c-type-form
+  int32-t                                       c-type-spec c-type-form
+  int64-t                                       c-type-spec c-type-form
+  int8-t                                        c-type-spec c-type-form
+  intmax-t                                      c-type-spec c-type-form
+  intptr-t                                      c-type-spec c-type-form
   kind-c-tagged-type                            generic
   llong                                         c-type-spec
   long                                          c-type-spec c-type-form
@@ -130,6 +172,20 @@ c-types-impl.lisp
   tagged-c-type                                 class
   uchar                                         c-type-spec
   uint                                          c-type-spec
+  uint-fast16-t                                 c-type-spec c-type-form
+  uint-fast32-t                                 c-type-spec c-type-form
+  uint-fast64-t                                 c-type-spec c-type-form
+  uint-fast8-t                                  c-type-spec c-type-form
+  uint-least16-t                                c-type-spec c-type-form
+  uint-least32-t                                c-type-spec c-type-form
+  uint-least64-t                                c-type-spec c-type-form
+  uint-least8-t                                 c-type-spec c-type-form
+  uint16-t                                      c-type-spec c-type-form
+  uint32-t                                      c-type-spec c-type-form
+  uint64-t                                      c-type-spec c-type-form
+  uint8-t                                       c-type-spec c-type-form
+  uintmax-t                                     c-type-spec c-type-form
+  uintptr-t                                     c-type-spec c-type-form
   ullong                                        c-type-spec
   ulong                                         c-type-spec
   cl:union                                      function c-type-form
@@ -303,6 +359,11 @@ class-make-proto.lisp
 
 class-output.lisp
   *instance-class*                              variable
+  emit-class-conversion-macro                   generic
+  emit-class-object-decl                        generic
+  emit-class-typedef                            generic
+  emit-message-macro                            generic
+  emit-message-macro-defn                       generic
 
 class-utilities.lisp
   argument-lists-compatible-p                   function
@@ -367,6 +428,7 @@ classes.lisp
   sod-message                                   class
   sod-message-class                             generic
   sod-message-name                              generic
+  sod-message-readonly-p                        generic
   sod-message-type                              generic
   sod-method                                    class
   sod-method-body                               generic
@@ -562,6 +624,7 @@ method-proto.lisp
   sod-message-check-methods                     generic
   sod-message-effective-method-class            generic
   sod-message-keyword-argument-lists            generic
+  sod-message-receiver-type                     generic
   sod-method-description                        generic
   sod-method-function-name                      generic
   sod-method-function-type                      generic
@@ -1001,6 +1064,12 @@ effective-slot-initializer-function
   sod-class-effective-slot
 effective-slot-prepare-function
   sod-class-effective-slot
+emit-class-conversion-macro
+  sod-class sod-class t
+emit-class-object-decl
+  sod-class t
+emit-class-typedef
+  sod-class t
 emit-decl
   sod::basic-codegen t
 emit-decls
@@ -1010,6 +1079,11 @@ emit-inst
 emit-insts
   t t
   sod::basic-codegen t
+emit-message-macro
+  sod-class method-entry t
+emit-message-macro-defn
+  sod-class method-entry t t t t t
+  sod-class method-entry t t t t t [:around]
 ensure-sequencer-item
   sequencer t
 ensure-var
@@ -1040,6 +1114,20 @@ expand-c-type-form
   (eql fn) t
   (eql fun) t
   (eql func) t
+  (eql int-fast16-t) t
+  (eql int-fast32-t) t
+  (eql int-fast64-t) t
+  (eql int-fast8-t) t
+  (eql int-least16-t) t
+  (eql int-least32-t) t
+  (eql int-least64-t) t
+  (eql int-least8-t) t
+  (eql int16-t) t
+  (eql int32-t) t
+  (eql int64-t) t
+  (eql int8-t) t
+  (eql intmax-t) t
+  (eql intptr-t) t
   (eql long) t
   (eql long-double) t
   (eql long-double-complex) t
@@ -1053,6 +1141,20 @@ expand-c-type-form
   (eql size-t) t
   (eql specs) t
   (eql struct) t
+  (eql uint-fast16-t) t
+  (eql uint-fast32-t) t
+  (eql uint-fast64-t) t
+  (eql uint-fast8-t) t
+  (eql uint-least16-t) t
+  (eql uint-least32-t) t
+  (eql uint-least64-t) t
+  (eql uint-least8-t) t
+  (eql uint16-t) t
+  (eql uint32-t) t
+  (eql uint64-t) t
+  (eql uint8-t) t
+  (eql uintmax-t) t
+  (eql uintptr-t) t
   (eql unsigned) t
   (eql unsigned-char) t
   (eql unsigned-long) t
@@ -1078,6 +1180,20 @@ expand-c-type-spec
   (eql double-imaginary)
   (eql float-complex)
   (eql float-imaginary)
+  (eql int-fast16-t)
+  (eql int-fast32-t)
+  (eql int-fast64-t)
+  (eql int-fast8-t)
+  (eql int-least16-t)
+  (eql int-least32-t)
+  (eql int-least64-t)
+  (eql int-least8-t)
+  (eql int16-t)
+  (eql int32-t)
+  (eql int64-t)
+  (eql int8-t)
+  (eql intmax-t)
+  (eql intptr-t)
   (eql llong)
   (eql long)
   (eql long-double)
@@ -1105,6 +1221,20 @@ expand-c-type-spec
   (eql sshort)
   (eql uchar)
   (eql uint)
+  (eql uint-fast16-t)
+  (eql uint-fast32-t)
+  (eql uint-fast64-t)
+  (eql uint-fast8-t)
+  (eql uint-least16-t)
+  (eql uint-least32-t)
+  (eql uint-least64-t)
+  (eql uint-least8-t)
+  (eql uint16-t)
+  (eql uint32-t)
+  (eql uint64-t)
+  (eql uint8-t)
+  (eql uintmax-t)
+  (eql uintptr-t)
   (eql ullong)
   (eql ulong)
   (eql unsigned)
@@ -1151,47 +1281,50 @@ format-temporary-name
 guess-metaclass
   sod-class
 hook-output
-  t t t [progn]
-  base-offset (eql :c) t [progn]
-  base-offset (eql :h) t [progn]
-  basic-effective-method (eql :c) t [progn]
-  chain-offset (eql :c) t [progn]
-  chain-offset (eql :h) t [progn]
-  class-pointer (eql :c) t [progn]
-  class-pointer (eql :h) t [progn]
-  code-fragment-item t t [progn]
-  delegating-direct-method (eql :c) t [progn]
-  effective-slot (eql cl:class) t [progn]
-  ichain (eql :h) t [progn]
-  ichain (eql cl:class) t [progn]
-  ichain (eql ilayout) t [progn]
-  ichain t t [progn]
-  ilayout (eql :h) t [progn]
-  ilayout t t [progn]
-  islots (eql :h) t [progn]
-  islots (eql cl:class) t [progn]
-  islots t t [progn]
-  method-entry (eql :c) t [progn]
-  method-entry (eql vtmsgs) t [progn]
-  module (eql :c) t [progn]
-  module (eql :h) t [progn]
-  module t t [progn]
-  sod-class (eql :c) t [progn]
-  sod-class (eql :h) t [progn]
-  sod-class t t [progn]
-  sod-class-effective-slot (eql cl:class) t [progn]
-  sod-method (eql :c) t [progn]
-  sod-method (eql :h) t [progn]
-  sod-slot (eql islots) t [progn]
-  vtable (eql :c) t [progn]
-  vtable (eql :h) t [progn]
-  vtable t t [progn]
-  vtable-pointer (eql :h) t [progn]
-  vtable-pointer (eql cl:class) t [progn]
-  vtmsgs (eql :c) t [progn]
-  vtmsgs (eql :h) t [progn]
-  vtmsgs (eql vtmsgs) t [progn]
-  vtmsgs t t [progn]
+  t t t
+  base-offset (eql :c) t
+  base-offset (eql :h) t
+  basic-effective-method (eql :c) t
+  chain-offset (eql :c) t
+  chain-offset (eql :h) t
+  class-pointer (eql :c) t
+  class-pointer (eql :h) t
+  code-fragment-item t t
+  delegating-direct-method (eql :c) t
+  effective-slot (eql cl:class) t
+  ichain (eql :h) t
+  ichain (eql cl:class) t
+  ichain (eql ilayout) t
+  ichain t t [:after]
+  ilayout (eql :h) t [:after]
+  ilayout (eql :h) t
+  ilayout t t [:after]
+  islots (eql :h) t
+  islots (eql cl:class) t
+  islots t t [:after]
+  method-entry (eql :c) t
+  method-entry (eql vtmsgs) t
+  module (eql :c) t
+  module (eql :h) t
+  module t t [:after]
+  sod-class (eql :c) t [:after]
+  sod-class (eql :c) t
+  sod-class (eql :h) t [:after]
+  sod-class (eql :h) t
+  sod-class t t [:after]
+  sod-class-effective-slot (eql cl:class) t
+  sod-method (eql :c) t
+  sod-method (eql :h) t
+  sod-slot (eql islots) t
+  vtable (eql :c) t
+  vtable (eql :h) t
+  vtable t t [:after]
+  vtable-pointer (eql :h) t
+  vtable-pointer (eql cl:class) t
+  vtmsgs (eql :c) t
+  vtmsgs (eql :h) t
+  vtmsgs (eql vtmsgs) t
+  vtmsgs t t [:after]
 ichain-body
   ichain
 ichain-class
@@ -1599,6 +1732,10 @@ sod-message-method-class
   sod-message sod-class t
 sod-message-name
   sod-message
+sod-message-readonly-p
+  sod-message
+sod-message-receiver-type
+  sod-message sod-class
 sod-message-type
   sod-message
 sod-method-body
@@ -2355,6 +2492,7 @@ utilities.lisp
   compose                                       function
   copy-instance                                 function
   copy-instance-using-class                     generic
+  cross-product                                 function
   default-slot                                  macro
   define-access-wrapper                         macro
   define-on-demand-slot                         macro