src/method-{proto,impl}.lisp: Introduce `effective-method-live-p' protocol.
[sod] / doc / SYMBOLS
index e99d6df..06e2002 100644 (file)
@@ -17,16 +17,45 @@ c-types-class-impl.lisp
 c-types-impl.lisp
   cl:*                                          variable function c-type
   cl:array                                      class c-type
+  bool                                          c-type
   c-array-dimensions                            generic
   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
+  c-type-bool                                   variable
+  c-type-char                                   variable
+  c-type-double                                 variable
+  c-type-double-complex                         variable
+  c-type-double-imaginary                       variable
+  c-type-float                                  variable
+  c-type-float-complex                          variable
+  c-type-float-imaginary                        variable
+  c-type-int                                    variable
+  c-type-long                                   variable
+  c-type-long-double                            variable
+  c-type-long-double-complex                    variable
+  c-type-long-double-imaginary                  variable
+  c-type-long-long                              variable
   c-type-name                                   generic
+  c-type-ptrdiff-t                              variable
+  c-type-short                                  variable
+  c-type-signed-char                            variable
+  c-type-size-t                                 variable
   c-type-tag                                    generic
+  c-type-unsigned                               variable
+  c-type-unsigned-char                          variable
+  c-type-unsigned-long                          variable
+  c-type-unsigned-long-long                     variable
+  c-type-unsigned-short                         variable
+  c-type-va-list                                variable
+  c-type-void                                   variable
+  c-type-wchar-t                                variable
   c-union-type                                  class
   cl:char                                       function setf c-type parser
   commentify-argument-names                     function
@@ -58,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
@@ -114,6 +148,7 @@ c-types-parse.lisp
 
 c-types-proto.lisp
   argument                                      class
+  argument-default                              function
   argument-name                                 function
   argument-type                                 function
   argumentp                                     function
@@ -215,10 +250,14 @@ 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
-  define-sod-class                              macro
   make-sod-class                                function
   make-sod-class-initializer                    generic
   make-sod-initializer-using-slot               generic
@@ -276,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
@@ -294,40 +332,19 @@ classes.lisp
   sod-slot-type                                 generic
 
 codegen-impl.lisp
-  call-inst                                     class
   codegen                                       class
-  do-while-inst                                 class
-  if-inst                                       class
-  inst-alt                                      generic
-  inst-ap                                       generic
-  inst-arg                                      generic
-  inst-args                                     generic
-  inst-body                                     generic
-  inst-cond                                     generic
-  inst-conseq                                   generic
-  inst-from                                     generic
-  inst-func                                     generic
-  inst-to                                       generic
-  make-call-inst                                function
-  make-do-while-inst                            function
-  make-if-inst                                  function
-  make-va-copy-inst                             function
-  make-va-end-inst                              function
-  make-va-start-inst                            function
-  make-while-inst                               function
   temporary-argument                            class
   temporary-function                            function class
   temporary-variable                            class
-  va-copy-inst                                  class
-  va-end-inst                                   class
-  va-start-inst                                 class
-  while-inst                                    class
 
 codegen-proto.lisp
+  *null-pointer*                                variable
   *sod-ap*                                      variable
   *sod-master-ap*                               variable
+  banner-inst                                   class
   block-inst                                    class
   break-inst                                    class
+  call-inst                                     class
   codegen-add-function                          generic
   codegen-build-function                        function
   codegen-functions                             generic setf
@@ -335,38 +352,61 @@ 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
+  deliver-call                                  function
   deliver-expr                                  function
+  do-while-inst                                 class
+  emit-banner                                   function
   emit-decl                                     generic
   emit-decls                                    generic
   emit-inst                                     generic
   emit-insts                                    generic
   ensure-var                                    generic
   expr-inst                                     class
+  for-inst                                      class
+  format-banner-comment                         function
   format-compound-statement                     macro
   format-temporary-name                         generic
   function-inst                                 class
+  if-inst                                       class
   inst                                          class
+  inst-alt                                      generic
+  inst-args                                     generic
+  inst-banner                                   generic
+  inst-banner-args                              generic
   inst-body                                     generic
+  inst-cond                                     generic
+  inst-conseq                                   generic
+  inst-control                                  generic
   inst-decls                                    generic
   inst-expr                                     generic
+  inst-func                                     generic
   inst-init                                     generic
   inst-metric                                   generic
   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
   make-set-inst                                 function
   make-update-inst                              function
   make-var-inst                                 function
+  make-while-inst                               function
   return-inst                                   class
   set-inst                                      class
   temp-tag                                      generic
@@ -375,6 +415,7 @@ codegen-proto.lisp
   update-inst                                   class
   var-in-use-p                                  generic setf
   var-inst                                      class
+  while-inst                                    class
   with-temporary-var                            macro
 
 final.lisp
@@ -382,6 +423,7 @@ final.lisp
   *sod-version*                                 variable
   exercise                                      function
   test-module                                   function
+  test-parser                                   macro
 
 fragment-parse.lisp
   parse-delimited-fragment                      function
@@ -436,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
@@ -443,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
@@ -458,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
@@ -480,6 +524,7 @@ module-output.lisp
   banner                                        function
   declare-output-type                           function
   guard-name                                    function
+  one-off-output                                function
   output-module                                 function
   output-type-pathname                          function
 
@@ -551,19 +596,6 @@ pset-proto.lisp
   store-property                                function
   with-pset-iterator                            macro
 
-Leaked slot names: #:func, #:class, #:expr, #:cond, #:expr, #:type, #:cond, #:expr, #:expr, #:expr, #:type, #:cond
-  call-inst: #:func
-  convert-to-ilayout-inst: #:class, #:expr
-  do-while-inst: #:cond
-  expr-inst: #:expr
-  function-inst: #:type
-  if-inst: #:cond
-  return-inst: #:expr
-  set-inst: #:expr
-  update-inst: #:expr
-  var-inst: #:type
-  while-inst: #:cond
-
 Classes:
 cl:t
   sb-pcl::slot-object
@@ -576,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
@@ -599,21 +632,21 @@ cl:t
       ichain
       ilayout
       inst
+        banner-inst
         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
         set-inst
         update-inst
-        va-copy-inst
-        va-end-inst
-        va-start-inst
         var-inst
         while-inst
       islots
@@ -678,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
@@ -691,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
@@ -792,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
@@ -806,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
@@ -838,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
@@ -868,7 +910,7 @@ expand-c-type-form
   (eql cl:function) t
   (eql cl:nil) t
   (eql cl:union) t
-  (eql sod::bool) t
+  (eql bool) t
   (eql double) t
   (eql double-complex) t
   (eql double-imaginary) t
@@ -908,7 +950,7 @@ expand-c-type-spec
   (eql cl:float)
   (eql cl:schar)
   (eql cl:string)
-  (eql sod::bool)
+  (eql bool)
   (eql const-string)
   (eql double)
   (eql double-complex)
@@ -1036,17 +1078,19 @@ ilayout-class
 ilayout-ichains
   ilayout
 inst-alt
+  cond-inst
   if-inst
-inst-ap
-  va-end-inst
-  va-start-inst
-inst-arg
-  va-start-inst
 inst-args
+  banner-inst
   call-inst
+inst-banner
+  function-inst
+inst-banner-args
+  function-inst
 inst-body
   block-inst
   do-while-inst
+  for-inst
   function-inst
   while-inst
 inst-chain-head
@@ -1054,11 +1098,16 @@ 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
 inst-decls
   block-inst
 inst-expr
@@ -1067,31 +1116,30 @@ inst-expr
   return-inst
   set-inst
   update-inst
-inst-from
-  va-copy-inst
 inst-func
   call-inst
 inst-init
+  for-inst
   var-inst
 inst-metric
   cl:list
   cl:null
   t
+  banner-inst
   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
   set-inst
   update-inst
-  va-copy-inst
-  va-end-inst
-  va-start-inst
   var-inst
   while-inst
 inst-name
@@ -1099,11 +1147,11 @@ inst-name
   var-inst
 inst-op
   update-inst
-inst-to
-  va-copy-inst
 inst-type
   function-inst
   var-inst
+inst-update
+  for-inst
 inst-var
   set-inst
   update-inst
@@ -1130,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
@@ -1176,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
@@ -1190,6 +1239,7 @@ print-c-type
   t simple-c-type
   t tagged-c-type
 cl:print-object
+  banner-inst t
   base-offset t
   block-inst t
   break-inst t
@@ -1198,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
@@ -1221,9 +1273,6 @@ cl:print-object
   sod-slot t
   temporary-name t
   update-inst t
-  va-copy-inst t
-  va-end-inst t
-  va-start-inst t
   var-inst t
   vtable t
   vtable-pointer t
@@ -1246,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
@@ -1265,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)
@@ -1321,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
@@ -1342,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
@@ -2019,6 +2065,7 @@ utilities.lisp
   sb-mop:method-specializers                    generic
   once-only                                     macro
   parse-body                                    function
+  print-ugly-stuff                              function
   ref                                           function setf
   symbolicate                                   function
   update-position                               function