summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/env.h
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2024-02-27 20:51:03 +0000
committerKarl Berry <karl@freefriends.org>2024-02-27 20:51:03 +0000
commit9ab1f2607e5c04df3cbeecf67c0c52956416ed1d (patch)
treeffc7153df8c7bf085ddad2ca2162fb5af7277753 /Build/source/utils/asymptote/env.h
parentd17bed7049c85db6da51c9e2e72ff6e468e4cbc6 (diff)
asy 2.87 sources
git-svn-id: svn://tug.org/texlive/trunk@70212 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/env.h')
-rw-r--r--Build/source/utils/asymptote/env.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/Build/source/utils/asymptote/env.h b/Build/source/utils/asymptote/env.h
index 0f979026206..301e22b2dd0 100644
--- a/Build/source/utils/asymptote/env.h
+++ b/Build/source/utils/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