aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGabriel Dos Reis <gdr@axiomatics.org>2016-01-17 16:27:30 -0800
committerGabriel Dos Reis <gdr@axiomatics.org>2016-01-17 16:27:30 -0800
commitb759bc632b404afd4b3f62ea4ac8a429d1a5d8d7 (patch)
tree6d5db2be4b6c2baad230fd661c5cb1e5c5517618 /src
parentb2eb2e7744d9947f6b5cf61c917014d9d5a4da7d (diff)
downloadopen-axiom-b759bc632b404afd4b3f62ea4ac8a429d1a5d8d7.tar.gz
getConstructorParentsFromDB: get data from compiled code.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/interp/daase.lisp6
-rw-r--r--src/interp/database.boot7
3 files changed, 11 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index b7d639da..61d7b845 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2016-01-17 Gabriel Dos Reis <gdr@axiomatics.org>
+
+ * interp/daase.lisp (GETDATABASE): Remove PARENTS case.
+ * interp/database.boot (getConstructorParentsFromDB): Take data
+ from compiled code.
+
2016-01-16 Gabriel Dos Reis <gdr@axiomatics.org>
* interp/sys-driver.boot (initializeDatabase): Be frugal when
diff --git a/src/interp/daase.lisp b/src/interp/daase.lisp
index 3e799091..a340fd13 100644
--- a/src/interp/daase.lisp
+++ b/src/interp/daase.lisp
@@ -680,10 +680,6 @@
(setq stream *browse-stream*)
(when struct
(setq data (database-documentation struct))))
- (parents
- (setq stream *browse-stream*)
- (when struct
- (setq data (|dbPrincipals| struct))))
(users
(setq stream *browse-stream*)
(when struct
@@ -718,8 +714,6 @@
(setf (|dbConstructorForm| struct) data))
(documentation
(setf (database-documentation struct) data))
- (parents
- (setf (|dbPrincipals| struct) data))
(users
(setf (database-users struct) data))
(dependents
diff --git a/src/interp/database.boot b/src/interp/database.boot
index 423cf547..e667ab74 100644
--- a/src/interp/database.boot
+++ b/src/interp/database.boot
@@ -165,9 +165,12 @@ getConstructorPredicates ctor ==
dbBeingDefined? db => dbPredicates db
dbPredicates loadDBIfNecessary db
-getConstructorParentsFromDB: %Symbol -> %List %Symbol
+getConstructorParentsFromDB: %Symbol -> %Alist(%Instantiation,%Code)
getConstructorParentsFromDB ctor ==
- GETDATABASE(ctor,"PARENTS")
+ db := constructorDB ctor
+ if not dbBeingDefined? db and dbPrincipals db isnt [.,:.] then
+ loadDBIfNecessary db
+ dbPrincipals db
getSuperDomainFromDB: %Symbol -> %Form
getSuperDomainFromDB ctor ==