package
0.0.0-20230729055617-8c2d49fbe62c
Repository: https://github.com/robotii/lito.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author

# 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.

# Constants

FALSE is shared boolean object that represents false.
FileExt stores the default extension.
TRUE is shared boolean object that represents true.
Version stores current Lito version.

# 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.

# Interfaces

Numeric represents a class that support numeric conversion to float.
Object represents all objects in Lito, including Array, Integer or even Method and Error.

# 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.