summaryrefslogtreecommitdiff
path: root/graphics/asymptote/env.h
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/asymptote/env.h')
-rw-r--r--graphics/asymptote/env.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/graphics/asymptote/env.h b/graphics/asymptote/env.h
index ef5ba67318..301e22b2dd 100644
--- a/graphics/asymptote/env.h
+++ b/graphics/asymptote/env.h
@@ -18,6 +18,10 @@ namespace types {
class record;
}
+namespace absyntax {
+class namedTyEntry;
+}
+
namespace trans {
using sym::symbol;
@@ -28,8 +32,8 @@ using types::record;
class genv;
// Keeps track of the name bindings of variables and types. This is used for
-// the fields of a record, whereas the derived class env is used for unqualified
-// names in translation.
+// the fields of a record, whereas the derived class env is used for
+// unqualified names in translation.
class protoenv {
//protected:
public:
@@ -140,8 +144,9 @@ public:
bool add(symbol src, symbol dest,
protoenv &source, varEntry *qualifier, coder &c)
{
- return te.add(src, dest, source.te, qualifier, c) ||
- ve.add(src, dest, source.ve, qualifier, c);
+ bool teAdd=te.add(src, dest, source.te, qualifier, c);
+ bool veAdd=ve.add(src, dest, source.ve, qualifier, c);
+ return teAdd || veAdd;
}
// Add the standard functions for a new type.
@@ -180,6 +185,11 @@ public:
~env();
record *getModule(symbol id, string filename);
+ record *getTemplatedModule(symbol id,
+ string filename,
+ string index,
+ mem::vector<absyntax::namedTyEntry*> *args
+ );
};
} // namespace trans