diff options
author | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
commit | ad547a6b5986815fda458221149728d9d9ab1d87 (patch) | |
tree | 16296910eb3eca724371474ea9aea3994dc69614 /Build/source/utils/asymptote/vm.h | |
parent | 947b43de3dd21d58ccc2ffadefc4441ea1c2a813 (diff) |
restore Build,TODO from r57911
git-svn-id: svn://tug.org/texlive/trunk@57915 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/vm.h')
-rw-r--r-- | Build/source/utils/asymptote/vm.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/vm.h b/Build/source/utils/asymptote/vm.h new file mode 100644 index 00000000000..2c7d7f63a66 --- /dev/null +++ b/Build/source/utils/asymptote/vm.h @@ -0,0 +1,39 @@ +/***** + * vm.h + * Tom Prince 2005/06/17 + * + * Interface to the virtual machine. + *****/ + +#ifndef VM_H +#define VM_H + +#include "errormsg.h" + +namespace vm { + +struct lambda; class stack; +typedef void (*bltin)(stack *s); + +#ifdef DEBUG_BLTIN +// This associates names to bltin functions, so that the output of 'asy -s' +// can print the names of the bltin functions that appear in the bytecode. +void registerBltin(bltin b, string s); +string lookupBltin(bltin b); + +#define REGISTER_BLTIN(b, s) \ + registerBltin((b), (s)) +#else +#define REGISTER_BLTIN(b, s) +#endif + +void run(lambda *l); +position getPos(); + +void errornothrow(const char* message); +void error(const char* message); +void error(const ostringstream& message); + +} // namespace vm + +#endif // VM_H |