summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/access.h
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/access.h')
-rw-r--r--Build/source/utils/asymptote/access.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/access.h b/Build/source/utils/asymptote/access.h
index 440ca172aef..eabd5a527ac 100644
--- a/Build/source/utils/asymptote/access.h
+++ b/Build/source/utils/asymptote/access.h
@@ -16,6 +16,10 @@
#include "item.h"
#include "vm.h"
+namespace vm {
+ class callable;
+}
+
namespace trans {
class frame;
@@ -72,6 +76,18 @@ public:
void encode(action act, position pos, coder &e, frame *);
};
+// Similar to bltinAccess, but works for any callable.
+class callableAccess : public access {
+ vm::callable *f;
+
+public:
+ callableAccess(vm::callable *f)
+ : f(f) {}
+
+ void encode(action act, position pos, coder &e);
+ void encode(action act, position pos, coder &e, frame *);
+};
+
// An access that puts a frame on the top of the stack.
class frameAccess : public access {
frame *f;