package
0.0.0-20230729055617-8c2d49fbe62c
Repository: https://github.com/robotii/lito.git
Documentation: pkg.go.dev
# Functions
BaseObject returns a base obj with the given class.
ExternalBuiltinMethod is a function that builds a BuiltinMethodObject from an external function.
ExternalClass helps define external go classes.
InitArrayObject returns a new object with the given elemnts.
InitHashObject initialise the HashObject.
LibraryPath set the path to the libraries.
Mode sets the mode of the vm.
New initialises a vm to initial state and returns it.
NoSuchMethod convenience function for when the method does not exist.
RegisterExternalClass will add the given class to the global registery of available classes.
StringObjectSplit returns an ArrayObject with the split strings.
# Variables
DefaultLibPath is used for overriding vm.libpath build-time.
MachineConfigs a list of different machine configurations.
NIL represents Lito's nil object.
# Structs
ArrayObject represents an instance of Array class.
BaseObj ...
BlockObject represents an instance of `Block` class.
BuiltinMethodObject represents methods defined in go.
CallFrame structure to hold a callframe.
ChannelObject represents a Golang channel.
Error class is a struct to hold internal error types with messages.
FileObject is a special type that contains file pointer so we can keep track on target file.
GoObject is used to hold opaque Golang values that cannot be converted to Objects.
HashObject represents a map instance.
LockObject is a Golang Lock.
MethodObject represents methods defined using Lito.
NilObject (`nil`) represents the nil value in Lito.
Pointer is used to point to an object.
RangeObject is the built in range class Range represents an interval: a set of values from the beginning to the end specified.
RClass represents normal (not built in) class object.
RegexpObject represents regexp instances, which of the type is actually string.
RObject represents any non built-in class's instance.
Stack is a basic stack implementation.
Thread is the context needed for a single thread of execution.
VM represents a stack based virtual machine.
WaitGroupObject represents a Golang WaitGroup.
# Type aliases
BooleanObject represents boolean object in Lito.
ClassInitFunc initialises a class for the vm.
ClassLoader can be registered with a vm so that it can load this library at vm creation.
ConfigFunc can be registered with a vm so that it can load this library at vm creation.
Environment stores a set of Objects addressable by name.
FloatObject represents a real number.
IntegerObject represents number objects which can bring into mathematical calculations.
Method is a callable function.
Regexp type alias for regexp.
StringObject represents string instances.