aboutsummaryrefslogtreecommitdiff
path: root/src/interp/c-util.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/c-util.boot')
-rw-r--r--src/interp/c-util.boot26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/interp/c-util.boot b/src/interp/c-util.boot
index 3f7dd18a..cc77d040 100644
--- a/src/interp/c-util.boot
+++ b/src/interp/c-util.boot
@@ -141,19 +141,21 @@ macro domainData d ==
structure %CompilationData ==
Record(subst: %Substitution,idata: %Substitution,bytes: List %Fixnum,
shell: %Vector %Thing, items: %Buffer %Pair(%SourceEntity,%Code),
- capsule: %List %Thing, lib: %Libstream,outpath: %Pathname) with
- cdSubstitution == (.subst)
- cdImplicits == (.idata)
- cdBytes == (.bytes)
- cdShell == (.shell)
- cdItems == (.items)
- cdCapsule == (.capsule)
- cdLib == (.lib)
- cdOutput == (.outpath)
+ capsule: %List %Thing, base: %Thing,
+ lib: %Libstream,outpath: %Pathname) with
+ cdSubstitution == (.subst)
+ cdImplicits == (.idata)
+ cdBytes == (.bytes)
+ cdShell == (.shell)
+ cdItems == (.items)
+ cdCapsule == (.capsule)
+ cdBase == (.base)
+ cdLib == (.lib)
+ cdOutput == (.outpath)
++ Make a fresh compilation data structure.
makeCompilationData() ==
- mk%CompilationData(nil,nil,nil,nil,[nil,:0],nil,nil,nil)
+ mk%CompilationData(nil,nil,nil,nil,[nil,:0],nil,nil,nil,nil)
++ Subsitution that replaces parameters with formals.
macro dbFormalSubst db ==
@@ -232,6 +234,10 @@ macro dbSubstituteQueries(db,x) ==
dbSubstituteAllQuantified(db,x) ==
applySubst([:dbQuerySubst db,:dbFormalSubst db],x)
+++ During compilation, return the base domain form of a domain defition.
+macro dbBaseDomainForm db ==
+ cdBase dbCompilerData db
+
--%
$SetCategory ==
'(SetCategory)