aboutsummaryrefslogtreecommitdiffstats
path: root/vm/vm.go
diff options
context:
space:
mode:
Diffstat (limited to 'vm/vm.go')
-rw-r--r--vm/vm.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/vm/vm.go b/vm/vm.go
new file mode 100644
index 000000000..22172cb3a
--- /dev/null
+++ b/vm/vm.go
@@ -0,0 +1,36 @@
+package vm
+
+import "math/big"
+
+// BIG FAT WARNING. THIS VM IS NOT YET IS USE!
+// I want to get all VM tests pass first before updating this VM
+
+type Vm struct {
+ env Environment
+ err error
+ depth int
+}
+
+func New(env Environment, typ Type) VirtualMachine {
+ switch typ {
+ case DebugVmTy:
+ return NewDebugVm(env)
+ default:
+ return &Vm{env: env}
+ }
+}
+
+func (self *Vm) Run(me, caller ClosureRef, code []byte, value, gas, price *big.Int, data []byte) (ret []byte, err error) {
+ panic("not implemented")
+}
+
+func (self *Vm) Env() Environment {
+ return self.env
+}
+
+func (self *Vm) Depth() int {
+ return self.depth
+}
+
+func (self *Vm) Printf(format string, v ...interface{}) VirtualMachine { return self }
+func (self *Vm) Endl() VirtualMachine { return self }