forked from TrueCloudLab/neoneo-go
4bd5b2812e
* support VM to pass method and arguments to a script. * added support for type assertions in smartcontracts. * added native vm support for print. * moved VM API packages to vm -> API * reverted the native Print opcode in favor of runtime.Log * added support for registering custom interop hooks in the VM. * Updated README * Updated compiler with @OPTIMIZE tags * Moved more tests to VM package. * optimized and refactored compiler and vm API * updated README with new smartcontract apis * bumped version
40 lines
928 B
Go
40 lines
928 B
Go
package runtime
|
|
|
|
import "github.com/CityOfZion/neo-go/pkg/vm/api/types"
|
|
|
|
// CheckWitness verifies if the invoker is the owner of the contract.
|
|
func CheckWitness(hash []byte) bool {
|
|
return true
|
|
}
|
|
|
|
// GetCurrentBlock returns the current block.
|
|
func GetCurrentBlock() types.Block { return types.Block{} }
|
|
|
|
// GetTime returns the timestamp of the most recent block.
|
|
func GetTime() int {
|
|
return 0
|
|
}
|
|
|
|
// Notify an event to the VM.
|
|
func Notify(arg interface{}) int {
|
|
return 0
|
|
}
|
|
|
|
// Log intructs the VM to log the given message.
|
|
func Log(message string) {}
|
|
|
|
// Application returns the application trigger type.
|
|
func Application() byte {
|
|
return 0x10
|
|
}
|
|
|
|
// Verification returns the verification trigger type.
|
|
func Verification() byte {
|
|
return 0x00
|
|
}
|
|
|
|
// GetTrigger return the current trigger type. The return in this function
|
|
// doesn't really mather, this is just an interop placeholder.
|
|
func GetTrigger() interface{} {
|
|
return 0
|
|
}
|