src/method-{proto,impl}.lisp: Introduce `effective-method-live-p' protocol.
[sod] / doc / SYMBOLS
index b73d8a9..06e2002 100644 (file)
@@ -22,7 +22,9 @@ c-types-impl.lisp
   c-array-type                                  class
   c-enum-type                                   class
   c-function-arguments                          generic
+  c-function-keywords                           generic
   c-function-type                               class
+  c-keyword-function-type                       class
   c-pointer-type                                class
   c-struct-type                                 class
   c-tagged-type-kind                            generic
@@ -85,14 +87,19 @@ c-types-impl.lisp
   make-c-tagged-type                            function
   make-enum-type                                function
   make-function-type                            function
+  make-keyword-function-type                    function
   make-pointer-type                             function
   make-simple-type                              function
   make-struct-type                              function
   make-union-type                               function
+  merge-keyword-lists                           function
   cl:nil                                        constant c-type parser
   pointer                                       c-type
+  pprint-argument-list                          function
+  pprint-c-function-type                        function
   ptr                                           c-type
   ptrdiff-t                                     c-type
+  reify-variable-argument-tail                  function
   cl:schar                                      function setf c-type
   short                                         c-type
   short-int                                     c-type
@@ -141,6 +148,7 @@ c-types-parse.lisp
 
 c-types-proto.lisp
   argument                                      class
+  argument-default                              function
   argument-name                                 function
   argument-type                                 function
   argumentp                                     function
@@ -242,6 +250,11 @@ class-layout-proto.lisp
   vtmsgs-entries                                generic
   vtmsgs-subclass                               generic
 
+class-make-impl.lisp
+  check-method-argument-lists                   function
+  check-method-return-type                      function
+  check-method-return-type-against-message      function
+
 class-make-proto.lisp
   check-message-type                            generic
   check-method-type                             generic
@@ -302,8 +315,7 @@ classes.lisp
   sod-initializer                               class
   sod-initializer-class                         generic
   sod-initializer-slot                          generic
-  sod-initializer-value-form                    generic
-  sod-initializer-value-kind                    generic
+  sod-initializer-value                         generic
   sod-instance-initializer                      class
   sod-message                                   class
   sod-message-class                             generic
@@ -340,6 +352,7 @@ codegen-proto.lisp
   codegen-pop-block                             generic
   codegen-pop-function                          generic
   codegen-push                                  generic
+  cond-inst                                     class
   continue-inst                                 class
   convert-stmts                                 function
   definst                                       macro
@@ -353,6 +366,7 @@ codegen-proto.lisp
   emit-insts                                    generic
   ensure-var                                    generic
   expr-inst                                     class
+  for-inst                                      class
   format-banner-comment                         function
   format-compound-statement                     macro
   format-temporary-name                         generic
@@ -375,14 +389,17 @@ codegen-proto.lisp
   inst-name                                     generic
   inst-op                                       generic
   inst-type                                     generic
+  inst-update                                   generic
   inst-var                                      generic
   make-banner-inst                              function
   make-block-inst                               function
   make-break-inst                               function
   make-call-inst                                function
+  make-cond-inst                                function
   make-continue-inst                            function
   make-do-while-inst                            function
   make-expr-inst                                function
+  make-for-inst                                 function
   make-function-inst                            function
   make-if-inst                                  function
   make-return-inst                              function
@@ -461,6 +478,8 @@ method-proto.lisp
   effective-method-basic-argument-names         generic
   effective-method-class                        generic
   effective-method-function-name                generic
+  effective-method-keywords                     generic
+  effective-method-live-p                       generic
   effective-method-message                      generic
   ensure-ilayout-var                            function
   inst-chain-head                               generic
@@ -468,6 +487,7 @@ method-proto.lisp
   inst-expr                                     generic
   invoke-delegation-chain                       function
   invoke-method                                 function
+  keyword-message-p                             function
   make-convert-to-ilayout-inst                  function
   make-method-entries                           generic
   make-trampoline                               function
@@ -483,7 +503,6 @@ method-proto.lisp
   simple-method-body                            generic
   sod-message-argument-tail                     generic
   sod-message-effective-method-class            generic
-  sod-message-no-varargs-tail                   generic
   sod-method-function-name                      generic
   sod-method-function-type                      generic
   sod-method-next-method-type                   generic
@@ -589,6 +608,7 @@ cl:t
       c-type
         c-array-type
         c-function-type
+          c-keyword-function-type
         qualifiable-c-type
           c-pointer-type
           simple-c-type
@@ -616,10 +636,12 @@ cl:t
         block-inst
         break-inst
         call-inst
+        cond-inst
         continue-inst
         convert-to-ilayout-inst
         do-while-inst
         expr-inst
+        for-inst
         function-inst
         if-inst
         return-inst
@@ -689,6 +711,8 @@ c-fragment-text
   c-fragment
 c-function-arguments
   c-function-type
+c-function-keywords
+  c-keyword-function-type
 c-tagged-type-kind
   c-enum-type
   c-struct-type
@@ -702,6 +726,7 @@ c-type-equal-p
   c-array-type c-array-type
   c-class-type c-class-type
   c-function-type c-function-type
+  c-keyword-function-type c-keyword-function-type
   c-pointer-type c-pointer-type
   qualifiable-c-type qualifiable-c-type
   simple-c-type simple-c-type
@@ -803,6 +828,7 @@ compute-chains
 compute-cpl
   sod-class
 compute-effective-method-body
+  basic-effective-method t t
   simple-effective-method t t
 compute-effective-methods
   sod-class
@@ -817,6 +843,7 @@ compute-islots
   sod-class sod-class
 compute-method-entry-functions
   basic-effective-method
+  effective-method
   simple-effective-method
 compute-sod-effective-method
   sod-message sod-class
@@ -849,6 +876,10 @@ effective-method-class
   effective-method
 effective-method-function-name
   effective-method
+effective-method-keywords
+  effective-method
+effective-method-live-p
+  simple-effective-method
 effective-method-message
   effective-method
 effective-slot-class
@@ -1047,6 +1078,7 @@ ilayout-class
 ilayout-ichains
   ilayout
 inst-alt
+  cond-inst
   if-inst
 inst-args
   banner-inst
@@ -1058,6 +1090,7 @@ inst-banner-args
 inst-body
   block-inst
   do-while-inst
+  for-inst
   function-inst
   while-inst
 inst-chain-head
@@ -1065,10 +1098,13 @@ inst-chain-head
 inst-class
   convert-to-ilayout-inst
 inst-cond
+  cond-inst
   do-while-inst
+  for-inst
   if-inst
   while-inst
 inst-conseq
+  cond-inst
   if-inst
 inst-control
   banner-inst
@@ -1083,6 +1119,7 @@ inst-expr
 inst-func
   call-inst
 inst-init
+  for-inst
   var-inst
 inst-metric
   cl:list
@@ -1092,10 +1129,12 @@ inst-metric
   block-inst
   break-inst
   call-inst
+  cond-inst
   continue-inst
   convert-to-ilayout-inst
   do-while-inst
   expr-inst
+  for-inst
   function-inst
   if-inst
   return-inst
@@ -1111,6 +1150,8 @@ inst-op
 inst-type
   function-inst
   var-inst
+inst-update
+  for-inst
 inst-var
   set-inst
   update-inst
@@ -1137,11 +1178,11 @@ make-method-entries
 sod-parser:make-scanner-stream
   sod-token-scanner
 make-sod-class-initializer
-  sod-class t t t t t
+  sod-class t t t t
 make-sod-initializer-using-slot
-  sod-class sod-slot t t t t t
+  sod-class sod-slot t t t t
 make-sod-instance-initializer
-  sod-class t t t t t
+  sod-class t t t t
 make-sod-message
   sod-class t t t
 make-sod-method
@@ -1183,6 +1224,7 @@ pprint-c-type
   t t t
   c-array-type t t
   c-function-type t t
+  c-keyword-function-type t t
   c-pointer-type t t
   simple-c-type t t
   tagged-c-type t t
@@ -1206,12 +1248,14 @@ cl:print-object
   call-inst t
   chain-offset t
   class-pointer t
+  cond-inst t
   continue-inst t
   convert-to-ilayout-inst t
   do-while-inst t
   effective-method t
   effective-slot t
   expr-inst t
+  for-inst t
   function-inst t
   ichain t
   if-inst t
@@ -1251,6 +1295,8 @@ cl:shared-initialize
   aggregating-message t
   basic-direct-method t
   c-function-type t
+  c-keyword-function-type t
+  effective-method t
   method-codegen t
   module t
   sequencer t
@@ -1270,7 +1316,6 @@ cl:slot-unbound
   t basic-effective-method (eql sod::basic-argument-names)
   t basic-effective-method (eql sod::functions)
   t basic-message (eql sod::argument-tail)
-  t basic-message (eql sod::no-varargs-tail)
   t delegating-direct-method (eql sod::function-type)
   t delegating-direct-method (eql sod::next-method-type)
   t sod-class (eql sod::%ilayout)
@@ -1326,9 +1371,7 @@ sod-initializer-class
   sod-initializer
 sod-initializer-slot
   sod-initializer
-sod-initializer-value-form
-  sod-initializer
-sod-initializer-value-kind
+sod-initializer-value
   sod-initializer
 sod-message-argument-tail
   basic-message
@@ -1347,8 +1390,6 @@ sod-message-method-class
   sod-message sod-class t
 sod-message-name
   sod-message
-sod-message-no-varargs-tail
-  basic-message
 sod-message-type
   sod-message
 sod-method-body