diff options
author | dos-reis <gdr@axiomatics.org> | 2011-02-09 03:02:40 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-02-09 03:02:40 +0000 |
commit | f4d8fd485a9486cb3bf1631dded5c72de055dfaf (patch) | |
tree | 32da6d74392200655f1ff829d9f33238379ad4a8 /src/interp | |
parent | f6c0812a8b16458f096bea7a8dc4326906d2efa0 (diff) | |
download | open-axiom-f4d8fd485a9486cb3bf1631dded5c72de055dfaf.tar.gz |
More mkCategory cleanup
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/category.boot | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/interp/category.boot b/src/interp/category.boot index 4d9fc3ae..ee5ab065 100644 --- a/src/interp/category.boot +++ b/src/interp/category.boot @@ -113,16 +113,17 @@ mkCategory(domainOrPackage,sigList,attList,domList,PrincipalAncestor) == NewLocals:= union(NewLocals,Prepare s.mmTarget) where Prepare u == "union"/[Prepare2 v for v in u] Prepare2 v == - v is "$" => nil + v is '$ => nil string? v => nil atom v => [v] - MEMQ(first v,$PrimitiveDomainNames) => nil + MEMQ(v.op,$PrimitiveDomainNames) => nil --This variable is set in INIT LISP --It is a list of all the domains that we need not cache - v is ["Union",:w] => - "union"/[Prepare2 x for x in stripUnionTags w] - v is ["Mapping",:w] => "union"/[Prepare2 x for x in w] - v is ["Record",.,:w] => "union"/[Prepare2 third x for x in w] + v.op is 'Union => + "union"/[Prepare2 x for x in stripUnionTags v.args] + v.op is 'Mapping => "union"/[Prepare2 x for x in v.args] + v.op is 'Record => "union"/[Prepare2 third x for x in v.args] + v.op is 'Enumeration => nil [v] OldLocals:= nil -- Remove possible duplicate local domain caches. |