diff options
author | dos-reis <gdr@axiomatics.org> | 2009-02-09 03:44:51 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2009-02-09 03:44:51 +0000 |
commit | eae3a083200c3d0d33851fac82cd9ef8a134d0c9 (patch) | |
tree | 7d8cc30a017fb4a72e999480e87d4ee54e559926 | |
parent | 6a7db2f84b6f8b2a1729092cc5259c576aff0ded (diff) | |
download | open-axiom-eae3a083200c3d0d33851fac82cd9ef8a134d0c9.tar.gz |
Tidy FunctionDescriptor
-rw-r--r-- | src/algebra/domain.spad.pamphlet | 2 | ||||
-rw-r--r-- | src/interp/database.boot | 12 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/algebra/domain.spad.pamphlet b/src/algebra/domain.spad.pamphlet index 47679554..3984223c 100644 --- a/src/algebra/domain.spad.pamphlet +++ b/src/algebra/domain.spad.pamphlet @@ -111,7 +111,7 @@ ConstructorCategory(): Category == OperatorCategory Identifier with kind x == getConstructorKind(x)$Lisp arity x == getConstructorArity(x)$Lisp dualSignature x == getDualSignatureFromDB(x)$Lisp - operations x == getConstructorOperationsFromDB(x)$Lisp + operations x == getOperationAlistFromLisplib(x)$Lisp @ diff --git a/src/interp/database.boot b/src/interp/database.boot index 31daea4b..8b3b9e1c 100644 --- a/src/interp/database.boot +++ b/src/interp/database.boot @@ -678,12 +678,22 @@ markUnique x == RPLACD(x,[u,:rest x]) rest x + +++ Tail of most function descriptors. +$FunctionDescriptorTail == '(NIL T ELT) + +++ Return the list of overload sets of operations exported by +++ the constructor `x'. This function differs from +++ getConstructorOperationsFromDB in that it uncompresses the +++ common tail of most function descriptors. That compression +++ was done when the overload sets were saved in the +++ operation database. getOperationAlistFromLisplib x == u := getConstructorOperationsFromDB x -- u := removeZeroOneDestructively u null u => u -- this can happen for Object CAAR u = '_$unique => rest u - f:= addConsDB '(NIL T ELT) + f:= addConsDB $FunctionDescriptorTail for [op,:sigList] in u repeat for items in tails sigList repeat [sig,:r] := first items |