Documentation ¶
Overview ¶
Package value contains definitions of Elk values, classes, structs, modules etc.
Index ¶
- Constants
- Variables
- func Add(left, right Value) (Value, *Error)
- func BitwiseAnd(left, right Value) (Value, *Error)
- func BitwiseAndNot(left, right Value) (Value, *Error)
- func BitwiseOr(left, right Value) (Value, *Error)
- func BitwiseXor(left, right Value) (Value, *Error)
- func ClassIsA(val Value, class *Class) bool
- func Compare(left, right Value) (Value, *Error)
- func CountFloatDigits(str string) int
- func Divide(left, right Value) (Value, *Error)
- func Exponentiate(left, right Value) (Value, *Error)
- func Falsy(val Value) bool
- func GetFromSlice(collection *[]Value, index int) (Value, *Error)
- func GreaterThan(left, right Value) (Value, *Error)
- func GreaterThanEqual(left, right Value) (Value, *Error)
- func Hash(key Value) (UInt64, *Error)
- func InspectSlice[T Value](slice []T) string
- func InstanceOf(val Value, class *Class) bool
- func IntToGoInt(val Value) (int, bool)
- func IsMutableCollection(val Value) bool
- func IsNil(val Value) bool
- func LeftBitshift(left, right Value) (Value, *Error)
- func LessThan(left, right Value) (Value, *Error)
- func LessThanEqual(left, right Value) (Value, *Error)
- func LoadTimezone(name string) (*Timezone, *Error)
- func LogicalLeftBitshift(left, right Value) (Value, *Error)
- func LogicalRightBitshift(left, right Value) (Value, *Error)
- func LogicalRightShift16[L SimpleInt](left L, right uint64) L
- func LogicalRightShift32[L SimpleInt](left L, right uint64) L
- func LogicalRightShift64[L SimpleInt](left L, right uint64) L
- func LogicalRightShift8[L SimpleInt](left L, right uint64) L
- func MixinIsA(val Value, mixin *Mixin) bool
- func Modulo(left, right Value) (Value, *Error)
- func Multiply(left, right Value) (Value, *Error)
- func NewClassComparer(opts *cmp.Options) cmp.Option
- func NewErrorComparer(opts *cmp.Options) cmp.Option
- func NewMixinComparer(opts *cmp.Options) cmp.Option
- func NewModuleComparer(opts *cmp.Options) cmp.Option
- func NewObjectComparer(opts *cmp.Options) cmp.Option
- func NewRegexComparer(opts *cmp.Options) cmp.Option
- func NewSymbolTableComparer() cmp.Option
- func ParseBigFloat(str string) (*BigFloat, *Error)
- func ParseBigInt(s string, base int) (*BigInt, *Error)
- func ParseUBigInt(s string, base int) (*BigInt, *Error)
- func PrecisionForFloatString(str string) uint
- func RightBitshift(left, right Value) (Value, *Error)
- func StrictFloatCompare[T StrictFloat](left T, right Value) (Value, *Error)
- func StrictIntCompare[T StrictInt](left T, right Value) (Value, *Error)
- func StrictNumericGreaterThan[T StrictNumeric](left T, right Value) (Bool, *Error)
- func StrictNumericGreaterThanEqual[T StrictNumeric](left T, right Value) (Bool, *Error)
- func StrictNumericLessThan[T StrictNumeric](left T, right Value) (Bool, *Error)
- func StrictNumericLessThanEqual[T StrictNumeric](left T, right Value) (Bool, *Error)
- func Subscript(collection, key Value) (Value, *Error)
- func SubscriptSet(collection, key, val Value) (Value, *Error)
- func Subtract(left, right Value) (Value, *Error)
- func ToGoInt(val Value) (int, bool)
- func ToValueErr(val Value, err *Error) (Value, Value)
- func Truthy(val Value) bool
- type ArrayList
- func (l *ArrayList) Append(elements ...Value)
- func (l *ArrayList) At(i int) Value
- func (l *ArrayList) Capacity() int
- func (*ArrayList) Class() *Class
- func (l *ArrayList) Concat(other Value) (*ArrayList, *Error)
- func (l *ArrayList) Copy() Value
- func (*ArrayList) DirectClass() *Class
- func (l *ArrayList) Expand(newElements int)
- func (l *ArrayList) Get(index int) (Value, *Error)
- func (l *ArrayList) Grow(newSlots int)
- func (l *ArrayList) Inspect() string
- func (*ArrayList) InstanceVariables() SymbolMap
- func (l *ArrayList) LeftCapacity() int
- func (l *ArrayList) Length() int
- func (l *ArrayList) Repeat(other Value) (*ArrayList, *Error)
- func (l *ArrayList) Set(index int, val Value) *Error
- func (l *ArrayList) SetAt(index int, val Value)
- func (*ArrayList) SingletonClass() *Class
- func (l *ArrayList) Subscript(key Value) (Value, *Error)
- func (l *ArrayList) SubscriptSet(key, val Value) *Error
- type ArrayListIterator
- func (*ArrayListIterator) Class() *Class
- func (l *ArrayListIterator) Copy() Value
- func (*ArrayListIterator) DirectClass() *Class
- func (l *ArrayListIterator) Inspect() string
- func (*ArrayListIterator) InstanceVariables() SymbolMap
- func (l *ArrayListIterator) Next() (Value, Value)
- func (*ArrayListIterator) SingletonClass() *Class
- type ArrayTuple
- func (t *ArrayTuple) Append(element Value)
- func (t *ArrayTuple) At(i int) Value
- func (*ArrayTuple) Class() *Class
- func (t *ArrayTuple) Concat(other Value) (Value, *Error)
- func (t *ArrayTuple) Copy() Value
- func (*ArrayTuple) DirectClass() *Class
- func (t *ArrayTuple) Expand(newElements int)
- func (t *ArrayTuple) Get(index int) (Value, *Error)
- func (t *ArrayTuple) Inspect() string
- func (*ArrayTuple) InstanceVariables() SymbolMap
- func (t *ArrayTuple) Length() int
- func (t *ArrayTuple) Repeat(other Value) (*ArrayTuple, *Error)
- func (t *ArrayTuple) Set(index int, val Value) *Error
- func (t *ArrayTuple) SetAt(index int, val Value)
- func (*ArrayTuple) SingletonClass() *Class
- func (t *ArrayTuple) Subscript(key Value) (Value, *Error)
- func (t *ArrayTuple) SubscriptSet(key, val Value) *Error
- type ArrayTupleIterator
- func (*ArrayTupleIterator) Class() *Class
- func (t *ArrayTupleIterator) Copy() Value
- func (*ArrayTupleIterator) DirectClass() *Class
- func (t *ArrayTupleIterator) Inspect() string
- func (*ArrayTupleIterator) InstanceVariables() SymbolMap
- func (t *ArrayTupleIterator) Next() (Value, Value)
- func (*ArrayTupleIterator) SingletonClass() *Class
- type BeginlessClosedRange
- type BeginlessOpenRange
- type BigFloat
- func (f *BigFloat) Add(other Value) (Value, *Error)
- func (z *BigFloat) AddBigFloat(x, y *BigFloat) *BigFloat
- func (f *BigFloat) AsGoBigFloat() *big.Float
- func (*BigFloat) Class() *Class
- func (x *BigFloat) Cmp(y *BigFloat) int
- func (f *BigFloat) Compare(other Value) (Value, *Error)
- func (f *BigFloat) Copy() Value
- func (*BigFloat) DirectClass() *Class
- func (z *BigFloat) DivBigFloat(x, y *BigFloat) *BigFloat
- func (f *BigFloat) Divide(other Value) (Value, *Error)
- func (f *BigFloat) Equal(other Value) Value
- func (z *BigFloat) ExpBigFloat(x, y *BigFloat) *BigFloat
- func (f *BigFloat) Exponentiate(other Value) (Value, *Error)
- func (f *BigFloat) FloorBigFloat() *BigFloat
- func (f *BigFloat) GreaterThan(other Value) (Value, *Error)
- func (f *BigFloat) GreaterThanEqual(other Value) (Value, *Error)
- func (f *BigFloat) Inspect() string
- func (f *BigFloat) InstanceVariables() SymbolMap
- func (f *BigFloat) IsInf(sign int) bool
- func (f *BigFloat) IsNaN() bool
- func (z *BigFloat) IsZero() bool
- func (f *BigFloat) LaxEqual(other Value) Value
- func (f *BigFloat) LessThan(other Value) (Value, *Error)
- func (f *BigFloat) LessThanEqual(other Value) (Value, *Error)
- func (z *BigFloat) Mod(x, y *BigFloat) *BigFloat
- func (f *BigFloat) Modulo(other Value) (Value, *Error)
- func (z *BigFloat) MulBigFloat(x, y *BigFloat) *BigFloat
- func (f *BigFloat) Multiply(other Value) (Value, *Error)
- func (f *BigFloat) Negate() *BigFloat
- func (f *BigFloat) Precision() uint
- func (z *BigFloat) Set(x *BigFloat) *BigFloat
- func (f *BigFloat) SetBigInt(i *BigInt) *BigFloat
- func (f *BigFloat) SetFloat(x Float) *BigFloat
- func (f *BigFloat) SetFloat64(x Float64) *BigFloat
- func (z *BigFloat) SetInf() *BigFloat
- func (f *BigFloat) SetInt64(i Int64) *BigFloat
- func (z *BigFloat) SetNaN() *BigFloat
- func (z *BigFloat) SetNegInf() *BigFloat
- func (f *BigFloat) SetPrecision(prec uint) *BigFloat
- func (f *BigFloat) SetSmallInt(i SmallInt) *BigFloat
- func (f *BigFloat) SetUInt64(i UInt64) *BigFloat
- func (f *BigFloat) Sign() int
- func (*BigFloat) SingletonClass() *Class
- func (f *BigFloat) StrictEqual(other Value) Value
- func (z *BigFloat) SubBigFloat(x, y *BigFloat) *BigFloat
- func (f *BigFloat) Subtract(other Value) (Value, *Error)
- func (f *BigFloat) ToBigInt() *BigInt
- func (f *BigFloat) ToFloat() Float
- func (f *BigFloat) ToGoBigFloat() *big.Float
- type BigFloatErrNaN
- type BigInt
- func (i *BigInt) Add(other Value) (Value, *Error)
- func (i *BigInt) BitSize() int
- func (i *BigInt) BitwiseAnd(other Value) (Value, *Error)
- func (i *BigInt) BitwiseAndNot(other Value) (Value, *Error)
- func (i *BigInt) BitwiseNot() Value
- func (i *BigInt) BitwiseOr(other Value) (Value, *Error)
- func (i *BigInt) BitwiseXor(other Value) (Value, *Error)
- func (*BigInt) Class() *Class
- func (x *BigInt) Cmp(y *BigInt) int
- func (i *BigInt) Compare(other Value) (Value, *Error)
- func (i *BigInt) Copy() Value
- func (i *BigInt) Decrement() Value
- func (*BigInt) DirectClass() *Class
- func (i *BigInt) Divide(other Value) (Value, *Error)
- func (i *BigInt) Equal(other Value) Value
- func (i *BigInt) Exponentiate(other Value) (Value, *Error)
- func (i *BigInt) GreaterThan(other Value) (Value, *Error)
- func (i *BigInt) GreaterThanEqual(other Value) (Value, *Error)
- func (i *BigInt) Hash() UInt64
- func (i *BigInt) Increment() Value
- func (i *BigInt) Inspect() string
- func (i *BigInt) InstanceVariables() SymbolMap
- func (i *BigInt) IsSmallInt() bool
- func (i *BigInt) IsZero() bool
- func (i *BigInt) LaxEqual(other Value) Value
- func (i *BigInt) LeftBitshift(other Value) (Value, *Error)
- func (i *BigInt) LessThan(other Value) (Value, *Error)
- func (i *BigInt) LessThanEqual(other Value) (Value, *Error)
- func (i *BigInt) Modulo(other Value) (Value, *Error)
- func (i *BigInt) Multiply(other Value) (Value, *Error)
- func (i *BigInt) Negate() Value
- func (i *BigInt) RightBitshift(other Value) (Value, *Error)
- func (*BigInt) SingletonClass() *Class
- func (i *BigInt) StrictEqual(other Value) Value
- func (i *BigInt) Subtract(other Value) (Value, *Error)
- func (i *BigInt) ToFloat() Float
- func (i *BigInt) ToFloat32() Float32
- func (i *BigInt) ToFloat64() Float64
- func (i *BigInt) ToGoBigInt() *big.Int
- func (i *BigInt) ToInt16() Int16
- func (i *BigInt) ToInt32() Int32
- func (i *BigInt) ToInt64() Int64
- func (i *BigInt) ToInt8() Int8
- func (i *BigInt) ToSmallInt() SmallInt
- func (i *BigInt) ToString() String
- func (i *BigInt) ToUInt16() UInt16
- func (i *BigInt) ToUInt32() UInt32
- func (i *BigInt) ToUInt64() UInt64
- func (i *BigInt) ToUInt8() UInt8
- type Bool
- func StrictFloatLaxEqual[T StrictFloat](left T, right Value) Bool
- func StrictNumericEqual[T StrictNumeric](left T, right Value) Bool
- func StrictNumericStrictEqual[T StrictNumeric](left T, right Value) Bool
- func StrictSignedIntLaxEqual[T StrictSignedInt](left T, right Value) Bool
- func StrictUnsignedIntLaxEqual[T StrictUnsignedInt](left T, right Value) Bool
- func ToBool(val Value) Bool
- func ToElkBool(val bool) Bool
- func ToNotBool(val Value) Bool
- type CallSiteInfo
- func (*CallSiteInfo) Class() *Class
- func (c *CallSiteInfo) Copy() Value
- func (*CallSiteInfo) DirectClass() *Class
- func (c *CallSiteInfo) Inspect() string
- func (*CallSiteInfo) InstanceVariables() SymbolMap
- func (c *CallSiteInfo) NamedArgumentCount() int
- func (c *CallSiteInfo) PositionalArgumentCount() int
- func (*CallSiteInfo) SingletonClass() *Class
- type Char
- func (c Char) ByteCount() int
- func (Char) CharCount() int
- func (Char) Class() *Class
- func (x Char) Cmp(y Char) int
- func (c Char) Compare(other Value) (Value, *Error)
- func (c Char) Concat(other Value) (String, *Error)
- func (c Char) Copy() Value
- func (Char) DirectClass() *Class
- func (c Char) Equal(other Value) Value
- func (Char) GraphemeCount() int
- func (c Char) GreaterThan(other Value) (Value, *Error)
- func (c Char) GreaterThanEqual(other Value) (Value, *Error)
- func (c Char) Inspect() string
- func (Char) InstanceVariables() SymbolMap
- func (c Char) LaxEqual(other Value) Value
- func (c Char) LessThan(other Value) (Value, *Error)
- func (c Char) LessThanEqual(other Value) (Value, *Error)
- func (c Char) Repeat(other Value) (String, *Error)
- func (Char) SingletonClass() *Class
- func (c Char) StrictEqual(other Value) Value
- type Class
- func (c *Class) Class() *Class
- func (c *Class) Copy() Value
- func (c *Class) CreateInstance() Value
- func (c *Class) DirectClass() *Class
- func (c *Class) Doc() Value
- func (c *Class) HasNoInstanceVariables() bool
- func (c *Class) IncludeMixin(mixin *Mixin)
- func (c *Class) Inspect() string
- func (c *Class) InstanceVariables() SymbolMap
- func (c *Class) IsAbstract() bool
- func (c *Class) IsMixinProxy() bool
- func (c *Class) IsSealed() bool
- func (c *Class) IsSingleton() bool
- func (c *Class) SetAbstract()
- func (c *Class) SetDirectClass(metaClass *Class)
- func (c *Class) SetDoc(doc String)
- func (c *Class) SetMixinProxy()
- func (c *Class) SetNoInstanceVariables()
- func (c *Class) SetSealed()
- func (c *Class) SetSingleton()
- func (c *Class) SetSingletonName(name string)
- func (c *Class) SingletonClass() *Class
- type ClassOption
- func ClassWithAbstract() ClassOption
- func ClassWithConstants(constants SymbolMap) ClassOption
- func ClassWithConstructor(constructor ConstructorFunc) ClassOption
- func ClassWithMetaClass(metaClass *Class) ClassOption
- func ClassWithMethods(methods MethodMap) ClassOption
- func ClassWithMixinProxy() ClassOption
- func ClassWithName(name string) ClassOption
- func ClassWithNoInstanceVariables() ClassOption
- func ClassWithParent(parent *Class) ClassOption
- func ClassWithSealed() ClassOption
- func ClassWithSingleton() ClassOption
- type ClosedRange
- type ClosedRangeIterator
- type ConstantContainer
- type ConstructorFunc
- type EndlessClosedRange
- type EndlessClosedRangeIterator
- func (*EndlessClosedRangeIterator) Class() *Class
- func (r *EndlessClosedRangeIterator) Copy() Value
- func (*EndlessClosedRangeIterator) DirectClass() *Class
- func (r *EndlessClosedRangeIterator) Inspect() string
- func (*EndlessClosedRangeIterator) InstanceVariables() SymbolMap
- func (*EndlessClosedRangeIterator) SingletonClass() *Class
- type EndlessOpenRange
- type EndlessOpenRangeIterator
- func (*EndlessOpenRangeIterator) Class() *Class
- func (r *EndlessOpenRangeIterator) Copy() Value
- func (*EndlessOpenRangeIterator) DirectClass() *Class
- func (r *EndlessOpenRangeIterator) Inspect() string
- func (*EndlessOpenRangeIterator) InstanceVariables() SymbolMap
- func (*EndlessOpenRangeIterator) SingletonClass() *Class
- type Error
- func Errorf(class *Class, format string, a ...any) *Error
- func NewArgumentTypeError(argName, given, expected string) *Error
- func NewBitshiftOperandError(other Value) *Error
- func NewCantAccessInstanceVariablesOnPrimitiveError(value string) *Error
- func NewCantCreateAnAliasForNonexistentMethod(methodName string) *Error
- func NewCantOverrideASealedMethod(methodName string) *Error
- func NewCantSetInstanceVariablesOnPrimitiveError(value string) *Error
- func NewCapacityTypeError(val string) *Error
- func NewCoerceError(target, other *Class) *Error
- func NewDuplicatedArgumentError(methodName, paramName string) *Error
- func NewError(class *Class, message string) *Error
- func NewIndexOutOfRangeError(index string, length int) *Error
- func NewInvalidSuperclassError(superclass string) *Error
- func NewIsNotClassError(value string) *Error
- func NewIsNotClassOrMixinError(value string) *Error
- func NewIsNotMixinError(value string) *Error
- func NewIsNotModuleError(value string) *Error
- func NewModifierMismatchError(object, modifier string, with bool) *Error
- func NewNegativeCapacityError(capacity string) *Error
- func NewNegativeIndicesInCollectionLiteralsError(index string) *Error
- func NewNoMethodError(methodName string, receiver Value) *Error
- func NewRedefinedConstantError(module, symbol string) *Error
- func NewRequiredArgumentMissingError(methodName, paramName string) *Error
- func NewSealedClassError(class, sealedParent string) *Error
- func NewSingletonError(given string) *Error
- func NewSuperclassMismatchError(class, wantSuperclass, gotSuperclass string) *Error
- func NewTooLargeCapacityError(capacity string) *Error
- func NewUnknownArgumentsError(method string, names []Symbol) *Error
- func NewWrongArgumentCountError(method string, given, expected int) *Error
- func NewWrongArgumentCountRangeError(method string, given, expectedFrom, expectedTo int) *Error
- func NewWrongArgumentCountRestError(method string, given, expectedFrom int) *Error
- func NewWrongPositionalArgumentCountError(method string, given, expectedFrom int) *Error
- func NewZeroDivisionError() *Error
- func SetInSlice(collection *[]Value, index int, val Value) *Error
- func StrictFloatDivide[T StrictFloat](left T, right Value) (T, *Error)
- func StrictFloatExponentiate[T StrictFloat](left T, right Value) (T, *Error)
- func StrictFloatModulo[T StrictFloat](left T, right Value) (T, *Error)
- func StrictIntBitwiseAnd[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntBitwiseAndNot[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntBitwiseOr[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntBitwiseXor[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntDivide[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntExponentiate[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntLeftBitshift[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntLogicalRightBitshift[T StrictInt](left T, right Value, shiftFunc logicalShiftFunc[T]) (T, *Error)
- func StrictIntModulo[T StrictInt](left T, right Value) (T, *Error)
- func StrictIntRightBitshift[T StrictInt](left T, right Value) (T, *Error)
- func StrictNumericAdd[T StrictNumeric](left T, right Value) (T, *Error)
- func StrictNumericMultiply[T StrictNumeric](left T, right Value) (T, *Error)
- func StrictNumericSubtract[T StrictNumeric](left T, right Value) (T, *Error)
- func StrictParseInt(s string, base int, bitSize int) (int64, *Error)
- func StrictParseUint(s string, base int, bitSize int) (uint64, *Error)
- type FalseType
- type Float
- func (f Float) Add(other Value) (Value, *Error)
- func (Float) Class() *Class
- func (x Float) Cmp(y Float) int
- func (f Float) Compare(other Value) (Value, *Error)
- func (f Float) Copy() Value
- func (Float) DirectClass() *Class
- func (f Float) Divide(other Value) (Value, *Error)
- func (f Float) Equal(other Value) Value
- func (f Float) Exponentiate(other Value) (Value, *Error)
- func (f Float) GreaterThan(other Value) (Value, *Error)
- func (f Float) GreaterThanEqual(other Value) (Value, *Error)
- func (f Float) Hash() UInt64
- func (f Float) Inspect() string
- func (f Float) InstanceVariables() SymbolMap
- func (f Float) IsInf(sign int) bool
- func (f Float) IsInt() bool
- func (f Float) IsNaN() bool
- func (f Float) LaxEqual(other Value) Value
- func (f Float) LessThan(other Value) (Value, *Error)
- func (f Float) LessThanEqual(other Value) (Value, *Error)
- func (a Float) Mod(b Float) Float
- func (f Float) Modulo(other Value) (Value, *Error)
- func (f Float) Multiply(other Value) (Value, *Error)
- func (Float) SingletonClass() *Class
- func (f Float) StrictEqual(other Value) Value
- func (f Float) Subtract(other Value) (Value, *Error)
- func (f Float) ToFloat32() Float32
- func (f Float) ToFloat64() Float64
- func (f Float) ToInt() Value
- func (f Float) ToInt16() Int16
- func (f Float) ToInt32() Int32
- func (f Float) ToInt64() Int64
- func (f Float) ToInt8() Int8
- func (f Float) ToString() String
- func (f Float) ToUInt16() UInt16
- func (f Float) ToUInt32() UInt32
- func (f Float) ToUInt64() UInt64
- func (f Float) ToUInt8() UInt8
- type Float32
- func (Float32) Class() *Class
- func (f Float32) Copy() Value
- func (Float32) DirectClass() *Class
- func (f Float32) Hash() UInt64
- func (f Float32) Inspect() string
- func (f Float32) InstanceVariables() SymbolMap
- func (f Float32) IsInf(sign int) bool
- func (f Float32) IsNaN() bool
- func (Float32) SingletonClass() *Class
- func (f Float32) ToString() String
- type Float64
- func (Float64) Class() *Class
- func (f Float64) Copy() Value
- func (Float64) DirectClass() *Class
- func (f Float64) Hash() UInt64
- func (f Float64) Inspect() string
- func (f Float64) InstanceVariables() SymbolMap
- func (f Float64) IsInf(sign int) bool
- func (f Float64) IsNaN() bool
- func (Float64) SingletonClass() *Class
- func (f Float64) ToString() String
- type Function
- type GlobalObjectType
- type HashMap
- func (h *HashMap) Capacity() int
- func (*HashMap) Class() *Class
- func (h *HashMap) Copy() Value
- func (*HashMap) DirectClass() *Class
- func (h *HashMap) Inspect() string
- func (*HashMap) InstanceVariables() SymbolMap
- func (h *HashMap) LeftCapacity() int
- func (h *HashMap) Length() int
- func (*HashMap) SingletonClass() *Class
- type HashMapIterator
- func (*HashMapIterator) Class() *Class
- func (h *HashMapIterator) Copy() Value
- func (*HashMapIterator) DirectClass() *Class
- func (h *HashMapIterator) Inspect() string
- func (*HashMapIterator) InstanceVariables() SymbolMap
- func (h *HashMapIterator) Next() (Value, Value)
- func (*HashMapIterator) SingletonClass() *Class
- type HashRecord
- type HashRecordIterator
- func (*HashRecordIterator) Class() *Class
- func (h *HashRecordIterator) Copy() Value
- func (*HashRecordIterator) DirectClass() *Class
- func (h *HashRecordIterator) Inspect() string
- func (*HashRecordIterator) InstanceVariables() SymbolMap
- func (h *HashRecordIterator) Next() (Value, Value)
- func (*HashRecordIterator) SingletonClass() *Class
- type HashSet
- func (h *HashSet) Capacity() int
- func (*HashSet) Class() *Class
- func (h *HashSet) Copy() Value
- func (*HashSet) DirectClass() *Class
- func (h *HashSet) Inspect() string
- func (*HashSet) InstanceVariables() SymbolMap
- func (h *HashSet) LeftCapacity() int
- func (h *HashSet) Length() int
- func (*HashSet) SingletonClass() *Class
- type HashSetIterator
- func (*HashSetIterator) Class() *Class
- func (h *HashSetIterator) Copy() Value
- func (*HashSetIterator) DirectClass() *Class
- func (h *HashSetIterator) Inspect() string
- func (*HashSetIterator) InstanceVariables() SymbolMap
- func (h *HashSetIterator) Next() (Value, Value)
- func (*HashSetIterator) SingletonClass() *Class
- type Int16
- func (i Int16) Class() *Class
- func (i Int16) Copy() Value
- func (Int16) DirectClass() *Class
- func (i Int16) Hash() UInt64
- func (i Int16) Inspect() string
- func (i Int16) InstanceVariables() SymbolMap
- func (Int16) SingletonClass() *Class
- func (i Int16) ToFloat() Float
- func (i Int16) ToFloat32() Float32
- func (i Int16) ToFloat64() Float64
- func (i Int16) ToInt32() Int32
- func (i Int16) ToInt64() Int64
- func (i Int16) ToSmallInt() SmallInt
- func (i Int16) ToString() String
- func (i Int16) ToUInt16() UInt16
- func (i Int16) ToUInt32() UInt32
- func (i Int16) ToUInt64() UInt64
- func (i Int16) ToUInt8() UInt8
- type Int32
- func (i Int32) Class() *Class
- func (i Int32) Copy() Value
- func (Int32) DirectClass() *Class
- func (i Int32) Hash() UInt64
- func (i Int32) Inspect() string
- func (i Int32) InstanceVariables() SymbolMap
- func (Int32) SingletonClass() *Class
- func (i Int32) ToFloat() Float
- func (i Int32) ToFloat32() Float32
- func (i Int32) ToFloat64() Float64
- func (i Int32) ToInt16() Int16
- func (i Int32) ToInt64() Int64
- func (i Int32) ToInt8() Int8
- func (i Int32) ToSmallInt() SmallInt
- func (i Int32) ToString() String
- func (i Int32) ToUInt16() UInt16
- func (i Int32) ToUInt32() UInt32
- func (i Int32) ToUInt64() UInt64
- func (i Int32) ToUInt8() UInt8
- type Int64
- func (i Int64) Class() *Class
- func (i Int64) Copy() Value
- func (Int64) DirectClass() *Class
- func (i Int64) Hash() UInt64
- func (i Int64) Inspect() string
- func (i Int64) InstanceVariables() SymbolMap
- func (Int64) SingletonClass() *Class
- func (i Int64) ToFloat() Float
- func (i Int64) ToFloat32() Float32
- func (i Int64) ToFloat64() Float64
- func (i Int64) ToInt16() Int16
- func (i Int64) ToInt32() Int32
- func (i Int64) ToInt8() Int8
- func (i Int64) ToSmallInt() SmallInt
- func (i Int64) ToString() String
- func (i Int64) ToUInt16() UInt16
- func (i Int64) ToUInt32() UInt32
- func (i Int64) ToUInt64() UInt64
- func (i Int64) ToUInt8() UInt8
- type Int8
- func (i Int8) Class() *Class
- func (i Int8) Copy() Value
- func (Int8) DirectClass() *Class
- func (i Int8) Hash() UInt64
- func (i Int8) Inspect() string
- func (i Int8) InstanceVariables() SymbolMap
- func (Int8) SingletonClass() *Class
- func (i Int8) ToFloat() Float
- func (i Int8) ToFloat32() Float32
- func (i Int8) ToFloat64() Float64
- func (i Int8) ToInt16() Int16
- func (i Int8) ToInt32() Int32
- func (i Int8) ToInt64() Int64
- func (i Int8) ToInt8() Int8
- func (i Int8) ToSmallInt() SmallInt
- func (i Int8) ToString() String
- func (i Int8) ToUInt16() UInt16
- func (i Int8) ToUInt32() UInt32
- func (i Int8) ToUInt64() UInt64
- func (i Int8) ToUInt8() UInt8
- type LeftOpenRange
- type LeftOpenRangeIterator
- func (*LeftOpenRangeIterator) Class() *Class
- func (r *LeftOpenRangeIterator) Copy() Value
- func (*LeftOpenRangeIterator) DirectClass() *Class
- func (r *LeftOpenRangeIterator) Inspect() string
- func (*LeftOpenRangeIterator) InstanceVariables() SymbolMap
- func (*LeftOpenRangeIterator) SingletonClass() *Class
- type Method
- type MethodContainer
- func (m *MethodContainer) AttachMethod(name Symbol, method Method) *Error
- func (m *MethodContainer) CanOverride(name Symbol) bool
- func (m *MethodContainer) DefineAlias(newMethodName, oldMethodName Symbol) *Error
- func (m *MethodContainer) DefineAliasString(newMethodName, oldMethodName string) *Error
- func (m *MethodContainer) LookupMethod(name Symbol) Method
- func (m *MethodContainer) Superclass() *Class
- type MethodMap
- type Mixin
- func (m *Mixin) Class() *Class
- func (m *Mixin) Copy() Value
- func (m *Mixin) CreateProxyClass() (head, tail *Class)
- func (m *Mixin) DirectClass() *Class
- func (m *Mixin) IncludeMixin(otherMixin *Mixin)
- func (m *Mixin) Inspect() string
- func (m *Mixin) InstanceVariables() SymbolMap
- func (m *Mixin) SingletonClass() *Class
- type MixinOption
- type Module
- type ModuleOption
- type NilType
- type Object
- type ObjectOption
- type OpenRange
- type OpenRangeIterator
- type Pair
- type Regex
- func (*Regex) Class() *Class
- func (r *Regex) Concat(other Value) (Value, *Error)
- func (r *Regex) Copy() Value
- func (*Regex) DirectClass() *Class
- func (r *Regex) Equal(other Value) Value
- func (r *Regex) Hash() UInt64
- func (r *Regex) Inspect() string
- func (r *Regex) InstanceVariables() SymbolMap
- func (r *Regex) LaxEqual(other Value) Value
- func (r *Regex) Matches(other Value) (Value, *Error)
- func (r *Regex) Repeat(other Value) (Value, *Error)
- func (*Regex) SingletonClass() *Class
- func (r *Regex) String() string
- func (r *Regex) ToString() String
- func (r *Regex) ToStringWithFlags() String
- func (r *Regex) WriteSourceTo(w io.StringWriter)
- type RightOpenRange
- type RightOpenRangeIterator
- func (*RightOpenRangeIterator) Class() *Class
- func (r *RightOpenRangeIterator) Copy() Value
- func (*RightOpenRangeIterator) DirectClass() *Class
- func (r *RightOpenRangeIterator) Inspect() string
- func (*RightOpenRangeIterator) InstanceVariables() SymbolMap
- func (*RightOpenRangeIterator) SingletonClass() *Class
- type SimpleInt
- type SmallInt
- func (i SmallInt) Add(other Value) (Value, *Error)
- func (a SmallInt) AddOverflow(b SmallInt) (result SmallInt, ok bool)
- func (i SmallInt) BitwiseAnd(other Value) (Value, *Error)
- func (i SmallInt) BitwiseAndNot(other Value) (Value, *Error)
- func (i SmallInt) BitwiseOr(other Value) (Value, *Error)
- func (i SmallInt) BitwiseXor(other Value) (Value, *Error)
- func (SmallInt) Class() *Class
- func (x SmallInt) Cmp(y SmallInt) int
- func (i SmallInt) Compare(other Value) (Value, *Error)
- func (i SmallInt) Copy() Value
- func (i SmallInt) Decrement() Value
- func (SmallInt) DirectClass() *Class
- func (i SmallInt) Divide(other Value) (Value, *Error)
- func (a SmallInt) DivideOverflow(b SmallInt) (result SmallInt, ok bool)
- func (i SmallInt) Equal(other Value) Value
- func (i SmallInt) Exponentiate(other Value) (Value, *Error)
- func (i SmallInt) GreaterThan(other Value) (Value, *Error)
- func (i SmallInt) GreaterThanEqual(other Value) (Value, *Error)
- func (i SmallInt) Hash() UInt64
- func (i SmallInt) Increment() Value
- func (i SmallInt) Inspect() string
- func (i SmallInt) InstanceVariables() SymbolMap
- func (i SmallInt) LaxEqual(other Value) Value
- func (i SmallInt) LeftBitshift(other Value) (Value, *Error)
- func (i SmallInt) LessThan(other Value) (Value, *Error)
- func (i SmallInt) LessThanEqual(other Value) (Value, *Error)
- func (i SmallInt) Modulo(other Value) (Value, *Error)
- func (i SmallInt) Multiply(other Value) (Value, *Error)
- func (a SmallInt) MultiplyOverflow(b SmallInt) (result SmallInt, ok bool)
- func (i SmallInt) Negate() Value
- func (i SmallInt) RightBitshift(other Value) (Value, *Error)
- func (SmallInt) SingletonClass() *Class
- func (i SmallInt) StrictEqual(other Value) Value
- func (i SmallInt) Subtract(other Value) (Value, *Error)
- func (a SmallInt) SubtractOverflow(b SmallInt) (result SmallInt, ok bool)
- func (i SmallInt) ToFloat() Float
- func (i SmallInt) ToFloat32() Float32
- func (i SmallInt) ToFloat64() Float64
- func (i SmallInt) ToInt16() Int16
- func (i SmallInt) ToInt32() Int32
- func (i SmallInt) ToInt64() Int64
- func (i SmallInt) ToInt8() Int8
- func (i SmallInt) ToString() String
- func (i SmallInt) ToUInt16() UInt16
- func (i SmallInt) ToUInt32() UInt32
- func (i SmallInt) ToUInt64() UInt64
- func (i SmallInt) ToUInt8() UInt8
- type StrictFloat
- type StrictInt
- type StrictNumeric
- type StrictSignedInt
- type StrictUnsignedInt
- type String
- func (s String) ByteAt(key Value) (UInt8, *Error)
- func (s String) ByteAtInt(index int) (UInt8, *Error)
- func (s String) ByteCount() int
- func (s String) CharCount() int
- func (s String) Class() *Class
- func (x String) Cmp(y String) int
- func (s String) Compare(other Value) (Value, *Error)
- func (s String) Concat(other Value) (String, *Error)
- func (s String) Copy() Value
- func (String) DirectClass() *Class
- func (s String) Equal(other Value) Value
- func (s String) Get(index int) (Char, *Error)
- func (s String) GraphemeAt(key Value) (String, *Error)
- func (s String) GraphemeAtInt(index int) (String, *Error)
- func (s String) GraphemeCount() int
- func (s String) GreaterThan(other Value) (Value, *Error)
- func (s String) GreaterThanEqual(other Value) (Value, *Error)
- func (s String) Hash() UInt64
- func (s String) Inspect() string
- func (s String) InstanceVariables() SymbolMap
- func (s String) IsEmpty() bool
- func (s String) LaxEqual(other Value) Value
- func (s String) LessThan(other Value) (Value, *Error)
- func (s String) LessThanEqual(other Value) (Value, *Error)
- func (s String) Lowercase() String
- func (s String) RemoveSuffix(other Value) (String, *Error)
- func (s String) Repeat(other Value) (String, *Error)
- func (s String) ReverseBytes() String
- func (s String) ReverseChars() String
- func (s String) ReverseGraphemes() String
- func (String) SingletonClass() *Class
- func (s String) StrictEqual(other Value) Value
- func (s String) Subscript(key Value) (Char, *Error)
- func (s String) ToChar() (Char, bool)
- func (s String) ToSymbol() Symbol
- func (s String) Uppercase() String
- type StringByteIterator
- func (*StringByteIterator) Class() *Class
- func (s *StringByteIterator) Copy() Value
- func (*StringByteIterator) DirectClass() *Class
- func (s *StringByteIterator) Inspect() string
- func (*StringByteIterator) InstanceVariables() SymbolMap
- func (s *StringByteIterator) Next() (Value, Value)
- func (*StringByteIterator) SingletonClass() *Class
- type StringCharIterator
- func (*StringCharIterator) Class() *Class
- func (s *StringCharIterator) Copy() Value
- func (*StringCharIterator) DirectClass() *Class
- func (s *StringCharIterator) Inspect() string
- func (*StringCharIterator) InstanceVariables() SymbolMap
- func (s *StringCharIterator) Next() (Value, Value)
- func (*StringCharIterator) SingletonClass() *Class
- type Symbol
- func (Symbol) Class() *Class
- func (s Symbol) Copy() Value
- func (Symbol) DirectClass() *Class
- func (s Symbol) Equal(other Value) Value
- func (s Symbol) Hash() UInt64
- func (s Symbol) Inspect() string
- func (s Symbol) InspectContent() string
- func (s Symbol) InstanceVariables() SymbolMap
- func (s Symbol) LaxEqual(other Value) Value
- func (Symbol) SingletonClass() *Class
- func (s Symbol) StrictEqual(other Value) Value
- func (s Symbol) String() string
- func (s Symbol) ToString() String
- type SymbolMap
- func (SymbolMap) Class() *Class
- func (s SymbolMap) Copy() Value
- func (s SymbolMap) Delete(key Symbol)
- func (s SymbolMap) DeleteString(key string)
- func (SymbolMap) DirectClass() *Class
- func (s SymbolMap) Get(key Symbol) Value
- func (s SymbolMap) GetString(key string) Value
- func (s SymbolMap) Has(key Symbol) bool
- func (s SymbolMap) HasString(key string) bool
- func (s SymbolMap) Inspect() string
- func (s SymbolMap) InstanceVariables() SymbolMap
- func (s SymbolMap) Set(key Symbol, val Value)
- func (s SymbolMap) SetString(key string, val Value)
- func (SymbolMap) SingletonClass() *Class
- type SymbolTableOption
- type SymbolTableStruct
- type Time
- func (t Time) AbbreviatedMonthName() string
- func (t Time) AbbreviatedWeekdayName() string
- func (t Time) Attosecond() int64
- func (t Time) Century() int
- func (Time) Class() *Class
- func (x Time) Cmp(y Time) int
- func (t Time) Copy() Value
- func (t Time) Day() int
- func (Time) DirectClass() *Class
- func (t Time) Equal(other Value) Value
- func (t Time) Femtosecond() int64
- func (t Time) Format(formatString string) (string, *Error)
- func (t Time) GreaterThan(other Value) (Value, *Error)
- func (t Time) GreaterThanEqual(other Value) (Value, *Error)
- func (t Time) Hour() int
- func (t Time) Hour12() int
- func (t Time) ISOWeek() int
- func (t Time) ISOYear() int
- func (t Time) ISOYearLastTwo() int
- func (t Time) Inspect() string
- func (t Time) InstanceVariables() SymbolMap
- func (t Time) IsAM() bool
- func (t Time) IsFriday() bool
- func (t Time) IsLocal() bool
- func (t Time) IsMonday() bool
- func (t Time) IsPM() bool
- func (t Time) IsSaturday() bool
- func (t Time) IsSunday() bool
- func (t Time) IsThursday() bool
- func (t Time) IsTuesday() bool
- func (t Time) IsUTC() bool
- func (t Time) IsWednesday() bool
- func (t Time) LaxEqual(other Value) Value
- func (t Time) LessThan(other Value) (Value, *Error)
- func (t Time) LessThanEqual(other Value) (Value, *Error)
- func (t Time) Local() Time
- func (t Time) Meridiem() string
- func (t Time) MeridiemLowercase() string
- func (t Time) Microsecond() int
- func (t Time) Millisecond() int
- func (t Time) Minute() int
- func (t Time) Month() int
- func (t Time) MonthName() string
- func (t Time) MustFormat(formatString string) string
- func (t Time) Nanosecond() int
- func (t Time) Picosecond() int64
- func (t Time) Second() int
- func (Time) SingletonClass() *Class
- func (t Time) StrictEqual(other Value) Value
- func (t Time) ToGoTime() time.Time
- func (t Time) ToString() String
- func (t Time) UTC() Time
- func (t Time) UnixAttoseconds() *big.Int
- func (t Time) UnixFemtoseconds() *big.Int
- func (t Time) UnixMicroseconds() *big.Int
- func (t Time) UnixMilliseconds() int64
- func (t Time) UnixNanoseconds() *big.Int
- func (t Time) UnixPicoseconds() *big.Int
- func (t Time) UnixSeconds() int64
- func (t Time) UnixYoctoseconds() *big.Int
- func (t Time) UnixZeptoseconds() *big.Int
- func (t Time) WeekFromMonday() int
- func (t Time) WeekFromSunday() int
- func (t Time) WeekdayFromMonday() int
- func (t Time) WeekdayFromSunday() int
- func (t Time) WeekdayName() string
- func (t Time) Year() int
- func (t Time) YearDay() int
- func (t Time) YearLastTwo() int
- func (t Time) Yoctosecond() *big.Int
- func (t Time) Zeptosecond() *big.Int
- func (t Time) Zone() *Timezone
- func (t Time) ZoneAbbreviatedName() string
- func (t Time) ZoneName() string
- func (t Time) ZoneOffsetHourMinutes() int
- func (t Time) ZoneOffsetHours() int
- func (t Time) ZoneOffsetSeconds() int
- type Timezone
- func (*Timezone) Class() *Class
- func (t *Timezone) Copy() Value
- func (*Timezone) DirectClass() *Class
- func (t *Timezone) Inspect() string
- func (t *Timezone) InstanceVariables() SymbolMap
- func (t *Timezone) IsLocal() bool
- func (t *Timezone) IsUTC() bool
- func (t *Timezone) Name() string
- func (*Timezone) SingletonClass() *Class
- func (t *Timezone) ToGoLocation() *time.Location
- type TrueType
- type UInt16
- func (UInt16) Class() *Class
- func (i UInt16) Copy() Value
- func (UInt16) DirectClass() *Class
- func (i UInt16) Hash() UInt64
- func (i UInt16) Inspect() string
- func (i UInt16) InstanceVariables() SymbolMap
- func (UInt16) SingletonClass() *Class
- func (i UInt16) ToFloat() Float
- func (i UInt16) ToFloat32() Float32
- func (i UInt16) ToFloat64() Float64
- func (i UInt16) ToInt16() Int16
- func (i UInt16) ToInt32() Int32
- func (i UInt16) ToInt64() Int64
- func (i UInt16) ToInt8() Int8
- func (i UInt16) ToSmallInt() SmallInt
- func (i UInt16) ToString() String
- func (i UInt16) ToUInt32() UInt32
- func (i UInt16) ToUInt64() UInt64
- func (i UInt16) ToUInt8() UInt8
- type UInt32
- func (UInt32) Class() *Class
- func (i UInt32) Copy() Value
- func (UInt32) DirectClass() *Class
- func (i UInt32) Hash() UInt64
- func (i UInt32) Inspect() string
- func (i UInt32) InstanceVariables() SymbolMap
- func (UInt32) SingletonClass() *Class
- func (i UInt32) ToFloat() Float
- func (i UInt32) ToFloat32() Float32
- func (i UInt32) ToFloat64() Float64
- func (i UInt32) ToInt16() Int16
- func (i UInt32) ToInt32() Int32
- func (i UInt32) ToInt64() Int64
- func (i UInt32) ToInt8() Int8
- func (i UInt32) ToSmallInt() SmallInt
- func (i UInt32) ToString() String
- func (i UInt32) ToUInt16() UInt16
- func (i UInt32) ToUInt64() UInt64
- func (i UInt32) ToUInt8() UInt8
- type UInt64
- func (UInt64) Class() *Class
- func (i UInt64) Copy() Value
- func (UInt64) DirectClass() *Class
- func (i UInt64) Hash() UInt64
- func (i UInt64) Inspect() string
- func (i UInt64) InstanceVariables() SymbolMap
- func (UInt64) SingletonClass() *Class
- func (i UInt64) ToFloat() Float
- func (i UInt64) ToFloat32() Float32
- func (i UInt64) ToFloat64() Float64
- func (i UInt64) ToInt16() Int16
- func (i UInt64) ToInt32() Int32
- func (i UInt64) ToInt64() Int64
- func (i UInt64) ToInt8() Int8
- func (i UInt64) ToSmallInt() SmallInt
- func (i UInt64) ToString() String
- func (i UInt64) ToUInt16() UInt16
- func (i UInt64) ToUInt32() UInt32
- func (i UInt64) ToUInt8() UInt8
- type UInt8
- func (UInt8) Class() *Class
- func (i UInt8) Copy() Value
- func (UInt8) DirectClass() *Class
- func (i UInt8) Hash() UInt64
- func (i UInt8) Inspect() string
- func (i UInt8) InstanceVariables() SymbolMap
- func (UInt8) SingletonClass() *Class
- func (i UInt8) ToFloat() Float
- func (i UInt8) ToFloat32() Float32
- func (i UInt8) ToFloat64() Float64
- func (i UInt8) ToInt16() Int16
- func (i UInt8) ToInt32() Int32
- func (i UInt8) ToInt64() Int64
- func (i UInt8) ToInt8() Int8
- func (i UInt8) ToSmallInt() SmallInt
- func (i UInt8) ToString() String
- func (i UInt8) ToUInt16() UInt16
- func (i UInt8) ToUInt32() UInt32
- func (i UInt8) ToUInt64() UInt64
- type UndefinedType
- type Value
- func BitwiseNot(operand Value) Value
- func ClassConstructor(metaClass *Class) Value
- func Decrement(operand Value) Value
- func Equal(left, right Value) Value
- func Increment(operand Value) Value
- func LaxEqual(left, right Value) Value
- func LaxNotEqual(left, right Value) Value
- func MixinConstructor(class *Class) Value
- func ModuleConstructor(class *Class) Value
- func Negate(operand Value) Value
- func NotEqual(left, right Value) Value
- func ObjectConstructor(class *Class) Value
- func PairConstructor(class *Class) Value
- func StrictEqual(left, right Value) Value
- func StrictNotEqual(left, right Value) Value
- func ToElkInt(i int64) Value
- func UnaryPlus(operand Value) Value
Constants ¶
const ( CLASS_SINGLETON_FLAG bitfield.BitFlag8 = 1 << iota // Singleton classes are hidden classes often associated with a single value CLASS_ABSTRACT_FLAG // Abstract classes cannot be instantiated CLASS_SEALED_FLAG // Sealed classes cannot be inherited from CLASS_NO_IVARS_FLAG // Instances of classes with this flag cannot hold instance variables CLASS_MIXIN_PROXY_FLAG // This class serves as a proxy to an included mixin )
const BigFloatNaNMode big.RoundingMode = 0b111
const DefaultTimeFormat = "%Y-%m-%d %H:%M:%S.%9N %:z"
const HashMapMaxLoad = 0.75
const HashSetMaxLoad = 0.75
const MaxSmallInt = math.MaxInt64
Max value of SmallInt
const MinSmallInt = math.MinInt64
Min value of SmallInt
const SmallIntBits = 64
Number of bits available for a small int.
Variables ¶
var ( // positive infinity BigFloatInfVal = BigFloatInf() // negative infinity BigFloatNegInfVal = BigFloatNegInf() // not a number value BigFloatNaNVal = BigFloatNaN() )
var False = FalseType{}
Elk's false value
var GlobalObject = GlobalObjectType{}
var Nil = NilType{}
Elk's Nil value
var SYMBOL_TABLE_INITIAL_SIZE int
The number of preallocated slots for symbols in the symbol table at startup.
var True = TrueType{}
Elk's true value
var Undefined = UndefinedType{}
Elk's internal undefined value Serves as a sentinel value that indicates that no "real" value is present.
Functions ¶
func Add ¶
Add two values. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func BitwiseAnd ¶
Execute a bitwise AND &. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func BitwiseAndNot ¶
Execute a bitwise AND NOT &^. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func BitwiseOr ¶
Execute a bitwise OR |. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func BitwiseXor ¶
Execute a bitwise XOR ^. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Compare ¶
Compare two values. Returns 1 if left is greater than right. Returns 0 if both are equal. Returns -1 if left is less than right.
When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func CountFloatDigits ¶
Counts the number of decimal digits in the string.
func Divide ¶
Divide two values When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Exponentiate ¶
Exponentiate two values When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Falsy ¶
Returns true when the Elk value is falsy (works like false in boolean logic) otherwise returns false.
func GetFromSlice ¶
Get an element under the given index.
func GreaterThan ¶
Check whether left is greater than right. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func GreaterThanEqual ¶
Check whether left is greater than or equal to right. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Hash ¶
Calculate the hash of the value. When successful returns (result, nil). When an error occurred returns (0, error). When there are no builtin addition functions for the given type returns (0, NotBuiltinError).
func InspectSlice ¶
Return the string representation of a slice of values.
func InstanceOf ¶
Check if the given value is an instance of the given class.
func IntToGoInt ¶
Converts an Elk value strictly to Go int. Returns (0, false) when the value is incompatible. Returns (-1, false) when the value is a BigInt too large to be converted to int.
func IsMutableCollection ¶
func LeftBitshift ¶
Execute a left bit shift <<. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func LessThan ¶
Check whether left is less than right. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func LessThanEqual ¶
Check whether left is less than or equal to right. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func LoadTimezone ¶
Load a timezone from the IANA database.
func LogicalLeftBitshift ¶
Execute a logical left bit shift <<<. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func LogicalRightBitshift ¶
Execute a logical right bit shift >>>. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func LogicalRightShift16 ¶
func LogicalRightShift32 ¶
func LogicalRightShift64 ¶
func LogicalRightShift8 ¶
func Modulo ¶
Perform modulo on two values When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Multiply ¶
Multiply two values When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func NewSymbolTableComparer ¶
func ParseBigFloat ¶
Parse a big float value from the given string.
func ParseBigInt ¶
Parses a signed big.Int from a string using Elk syntax.
func ParseUBigInt ¶
Parses an unsigned big.Int from a string using Elk syntax.
func PrecisionForFloatString ¶
Calculates the precision required to represent the float in the given string.
func RightBitshift ¶
Execute a right bit shift >>. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func StrictFloatCompare ¶
func StrictFloatCompare[T StrictFloat](left T, right Value) (Value, *Error)
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func StrictIntCompare ¶
Check whether left is greater than right. If the operation is illegal an error will be returned.
func StrictNumericGreaterThan ¶
func StrictNumericGreaterThan[T StrictNumeric](left T, right Value) (Bool, *Error)
Check whether left is greater than right. If the operation is illegal an error will be returned.
func StrictNumericGreaterThanEqual ¶
func StrictNumericGreaterThanEqual[T StrictNumeric](left T, right Value) (Bool, *Error)
Check whether left is greater than or equal to right. If the operation is illegal an error will be returned.
func StrictNumericLessThan ¶
func StrictNumericLessThan[T StrictNumeric](left T, right Value) (Bool, *Error)
Check whether left is less than right. If the operation is illegal an error will be returned.
func StrictNumericLessThanEqual ¶
func StrictNumericLessThanEqual[T StrictNumeric](left T, right Value) (Bool, *Error)
Check whether left is less than or equal to right. If the operation is illegal an error will be returned.
func Subscript ¶
Get an element by key. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func SubscriptSet ¶
Set an element under the given key. When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func Subtract ¶
Subtract two values When successful returns (result, nil). When an error occurred returns (nil, error). When there are no builtin addition functions for the given type returns (nil, nil).
func ToGoInt ¶
Converts an Elk value to Go int. Returns (0, false) when the value is incompatible. Returns (-1, false) when the value is a BigInt too large to be converted to int.
func ToValueErr ¶
Convert a pair of (Value, *Error) return values to (Value, Value)
Types ¶
type ArrayList ¶
type ArrayList []Value
Elk's ArrayList value
func NewArrayList ¶
func NewArrayListWithLength ¶
func (*ArrayList) Concat ¶
Concatenate another value with this list, creating a new list, and return the result. If the operation is illegal an error will be returned.
func (*ArrayList) DirectClass ¶
func (*ArrayList) InstanceVariables ¶
func (*ArrayList) LeftCapacity ¶
func (*ArrayList) Repeat ¶
Repeat the content of this list n times and return a new list containing the result. If the operation is illegal an error will be returned.
func (*ArrayList) SingletonClass ¶
func (*ArrayList) SubscriptSet ¶
Set an element under the given index.
type ArrayListIterator ¶
func NewArrayListIterator ¶
func NewArrayListIterator(list *ArrayList) *ArrayListIterator
func NewArrayListIteratorWithIndex ¶
func NewArrayListIteratorWithIndex(list *ArrayList, index int) *ArrayListIterator
func (*ArrayListIterator) Class ¶
func (*ArrayListIterator) Class() *Class
func (*ArrayListIterator) Copy ¶
func (l *ArrayListIterator) Copy() Value
func (*ArrayListIterator) DirectClass ¶
func (*ArrayListIterator) DirectClass() *Class
func (*ArrayListIterator) Inspect ¶
func (l *ArrayListIterator) Inspect() string
func (*ArrayListIterator) InstanceVariables ¶
func (*ArrayListIterator) InstanceVariables() SymbolMap
func (*ArrayListIterator) Next ¶
func (l *ArrayListIterator) Next() (Value, Value)
func (*ArrayListIterator) SingletonClass ¶
func (*ArrayListIterator) SingletonClass() *Class
type ArrayTuple ¶
type ArrayTuple []Value
Elk's ArrayTuple value
func NewArrayTuple ¶
func NewArrayTuple(capacity int) *ArrayTuple
func NewArrayTupleWithElements ¶
func NewArrayTupleWithElements(capacity int, elements ...Value) *ArrayTuple
func NewArrayTupleWithLength ¶
func NewArrayTupleWithLength(length int) *ArrayTuple
func (*ArrayTuple) At ¶
func (t *ArrayTuple) At(i int) Value
Get an element under the given index without bounds checking.
func (*ArrayTuple) Class ¶
func (*ArrayTuple) Class() *Class
func (*ArrayTuple) Concat ¶
func (t *ArrayTuple) Concat(other Value) (Value, *Error)
Concatenate another value with this arrayTuple, creating a new value, and return the result. If the operation is illegal an error will be returned.
func (*ArrayTuple) Copy ¶
func (t *ArrayTuple) Copy() Value
func (*ArrayTuple) DirectClass ¶
func (*ArrayTuple) DirectClass() *Class
func (*ArrayTuple) Expand ¶
func (t *ArrayTuple) Expand(newElements int)
Expands the arrayTuple by n nil elements.
func (*ArrayTuple) Get ¶
func (t *ArrayTuple) Get(index int) (Value, *Error)
Get an element under the given index.
func (*ArrayTuple) Inspect ¶
func (t *ArrayTuple) Inspect() string
func (*ArrayTuple) InstanceVariables ¶
func (*ArrayTuple) InstanceVariables() SymbolMap
func (*ArrayTuple) Length ¶
func (t *ArrayTuple) Length() int
func (*ArrayTuple) Repeat ¶
func (t *ArrayTuple) Repeat(other Value) (*ArrayTuple, *Error)
Repeat the content of this arrayTuple n times and return a new arrayTuple containing the result. If the operation is illegal an error will be returned.
func (*ArrayTuple) Set ¶
func (t *ArrayTuple) Set(index int, val Value) *Error
Set an element under the given index.
func (*ArrayTuple) SetAt ¶
func (t *ArrayTuple) SetAt(index int, val Value)
Set an element under the given index without bounds checking.
func (*ArrayTuple) SingletonClass ¶
func (*ArrayTuple) SingletonClass() *Class
func (*ArrayTuple) Subscript ¶
func (t *ArrayTuple) Subscript(key Value) (Value, *Error)
Get an element under the given index.
func (*ArrayTuple) SubscriptSet ¶
func (t *ArrayTuple) SubscriptSet(key, val Value) *Error
Set an element under the given index.
type ArrayTupleIterator ¶
type ArrayTupleIterator struct { ArrayTuple *ArrayTuple Index int }
func NewArrayTupleIterator ¶
func NewArrayTupleIterator(arrayTuple *ArrayTuple) *ArrayTupleIterator
func NewArrayTupleIteratorWithIndex ¶
func NewArrayTupleIteratorWithIndex(arrayTuple *ArrayTuple, index int) *ArrayTupleIterator
func (*ArrayTupleIterator) Class ¶
func (*ArrayTupleIterator) Class() *Class
func (*ArrayTupleIterator) Copy ¶
func (t *ArrayTupleIterator) Copy() Value
func (*ArrayTupleIterator) DirectClass ¶
func (*ArrayTupleIterator) DirectClass() *Class
func (*ArrayTupleIterator) Inspect ¶
func (t *ArrayTupleIterator) Inspect() string
func (*ArrayTupleIterator) InstanceVariables ¶
func (*ArrayTupleIterator) InstanceVariables() SymbolMap
func (*ArrayTupleIterator) Next ¶
func (t *ArrayTupleIterator) Next() (Value, Value)
func (*ArrayTupleIterator) SingletonClass ¶
func (*ArrayTupleIterator) SingletonClass() *Class
type BeginlessClosedRange ¶
type BeginlessClosedRange struct {
To Value // end value
}
Represents a beginless closed range eg. `...2`
func NewBeginlessClosedRange ¶
func NewBeginlessClosedRange(to Value) *BeginlessClosedRange
Create a new beginless closed range class.
func (*BeginlessClosedRange) Class ¶
func (*BeginlessClosedRange) Class() *Class
func (*BeginlessClosedRange) Copy ¶
func (r *BeginlessClosedRange) Copy() Value
func (*BeginlessClosedRange) DirectClass ¶
func (*BeginlessClosedRange) DirectClass() *Class
func (*BeginlessClosedRange) Inspect ¶
func (r *BeginlessClosedRange) Inspect() string
func (*BeginlessClosedRange) InstanceVariables ¶
func (r *BeginlessClosedRange) InstanceVariables() SymbolMap
func (*BeginlessClosedRange) SingletonClass ¶
func (*BeginlessClosedRange) SingletonClass() *Class
type BeginlessOpenRange ¶
type BeginlessOpenRange struct {
To Value // end value
}
Represents a beginless open range eg. `..<2`
func NewBeginlessOpenRange ¶
func NewBeginlessOpenRange(to Value) *BeginlessOpenRange
Create a new beginless open range class.
func (*BeginlessOpenRange) Class ¶
func (*BeginlessOpenRange) Class() *Class
func (*BeginlessOpenRange) Copy ¶
func (r *BeginlessOpenRange) Copy() Value
func (*BeginlessOpenRange) DirectClass ¶
func (*BeginlessOpenRange) DirectClass() *Class
func (*BeginlessOpenRange) Inspect ¶
func (r *BeginlessOpenRange) Inspect() string
func (*BeginlessOpenRange) InstanceVariables ¶
func (r *BeginlessOpenRange) InstanceVariables() SymbolMap
func (*BeginlessOpenRange) SingletonClass ¶
func (*BeginlessOpenRange) SingletonClass() *Class
type BigFloat ¶
Elk's BigFloat value
func NewBigFloat ¶
Create a new BigFloat with the specified value.
func ParseBigFloatPanic ¶
Same as ParseBigFloat but panics on error.
func ToElkBigFloat ¶
Convert Go's big.Float values to Elk's BigFloat values.
func (*BigFloat) AddBigFloat ¶
Add sets z to the rounded sum x+y and returns z.
func (*BigFloat) AsGoBigFloat ¶
Convert Elk's BigFloat values to Go's big.Float values. Does a cast without any checks.
func (*BigFloat) Cmp ¶
Cmp compares x and y and returns:
-1 if x < y 0 if x == y +1 if x > y
Panics if x or y are NaN.
func (*BigFloat) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (*BigFloat) DirectClass ¶
func (*BigFloat) DivBigFloat ¶
Div sets z to the rounded result x/y and returns z.
func (*BigFloat) Equal ¶
Check whether f is equal to other and return an error if something went wrong.
func (*BigFloat) Exponentiate ¶
Exponentiate by another value and return an error if something went wrong.
func (*BigFloat) FloorBigFloat ¶
func (*BigFloat) GreaterThan ¶
Check whether f is greater than other and return an error if something went wrong.
func (*BigFloat) GreaterThanEqual ¶
Check whether f is greater than or equal to other and return an error if something went wrong.
func (*BigFloat) InstanceVariables ¶
func (*BigFloat) IsInf ¶
IsInf reports whether f is an infinity, according to sign. If sign > 0, IsInf reports whether f is positive infinity. If sign < 0, IsInf reports whether f is negative infinity. If sign == 0, IsInf reports whether f is either infinity.
func (*BigFloat) LaxEqual ¶
Check whether f is equal to other and return an error if something went wrong.
func (*BigFloat) LessThan ¶
Check whether f is less than other and return an error if something went wrong.
func (*BigFloat) LessThanEqual ¶
Check whether f is less than or equal to other and return an error if something went wrong.
func (*BigFloat) Mod ¶
Perform z = a % b by another BigFloat.
Special cases are:
Mod(±Inf, y) = NaN Mod(NaN, y) = NaN Mod(x, 0) = NaN Mod(x, ±Inf) = x Mod(x, NaN) = NaN
func (*BigFloat) Modulo ¶
Perform modulo by another numeric value and return an error if something went wrong.
func (*BigFloat) MulBigFloat ¶
Mul sets z to the rounded result x*y and returns z.
func (*BigFloat) SetFloat64 ¶
Sets f to the possibly rounded value of x.
func (*BigFloat) SetPrecision ¶
Sets the f's precision to prec and possibly rounds the value.
func (*BigFloat) SetSmallInt ¶
Sets f to the value of i.
func (*BigFloat) SingletonClass ¶
func (*BigFloat) StrictEqual ¶
Check whether f is strictly equal to other and return an error if something went wrong.
func (*BigFloat) SubBigFloat ¶
Sub sets z to the rounded result x-y and returns z.
func (*BigFloat) ToGoBigFloat ¶
Convert Elk's BigFloat values to Go's big.Float values. Panics with big.ErrNaN if f is a NaN.
type BigFloatErrNaN ¶
type BigFloatErrNaN struct {
// contains filtered or unexported fields
}
A BigFloatErrNaN panic is raised when converting a NaN value from Elk's BigFloat to Go's big.Float. Implements the error interface.
func (BigFloatErrNaN) Error ¶
func (e BigFloatErrNaN) Error() string
type BigInt ¶
Elk's BigInt value
func ParseBigIntPanic ¶
Same as ParseBigInt but panics on error.
func ToElkBigInt ¶
Convert Go big.Int value to Elk BigInt value.
func (*BigInt) BitwiseAnd ¶
Perform bitwise AND with another value and return an error if something went wrong.
func (*BigInt) BitwiseAndNot ¶
Perform bitwise AND NOT with another value and return an error if something went wrong.
func (*BigInt) BitwiseNot ¶
Perform bitwise not on the number and return the result.
func (*BigInt) BitwiseOr ¶
Perform bitwise OR with another value and return an error if something went wrong.
func (*BigInt) BitwiseXor ¶
Perform bitwise XOR with another value and return an error if something went wrong.
func (*BigInt) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (*BigInt) DirectClass ¶
func (*BigInt) Exponentiate ¶
Exponentiate by another value and return an error if something went wrong.
func (*BigInt) GreaterThan ¶
Check whether i is greater than other and return an error if something went wrong.
func (*BigInt) GreaterThanEqual ¶
Check whether i is greater than or equal to other and return an error if something went wrong.
func (*BigInt) InstanceVariables ¶
func (*BigInt) IsSmallInt ¶
Reports whether i can be represented as a SmallInt.
func (*BigInt) LeftBitshift ¶
Bitshift to the left by another integer value and return an error if something went wrong.
func (*BigInt) LessThan ¶
Check whether i is less than other and return an error if something went wrong.
func (*BigInt) LessThanEqual ¶
Check whether i is less than or equal to other and return an error if something went wrong.
func (*BigInt) Modulo ¶
Perform modulo with another numeric value and return an error if something went wrong.
func (*BigInt) RightBitshift ¶
Bitshift to the right by another integer value and return an error if something went wrong.
func (*BigInt) SingletonClass ¶
func (*BigInt) StrictEqual ¶
Check whether i is strictly equal to other
func (*BigInt) ToGoBigInt ¶
Convert the Elk BigInt value to Go big.Int value.
func (*BigInt) ToSmallInt ¶
Returns the SmallInt representation of i.
type Bool ¶
type Bool interface { Value // contains filtered or unexported methods }
func StrictFloatLaxEqual ¶
func StrictFloatLaxEqual[T StrictFloat](left T, right Value) Bool
Check whether the left float is equal to right.
func StrictNumericEqual ¶
func StrictNumericEqual[T StrictNumeric](left T, right Value) Bool
Check whether left is equal to right.
func StrictNumericStrictEqual ¶
func StrictNumericStrictEqual[T StrictNumeric](left T, right Value) Bool
Check whether left is strictly equal to right.
func StrictSignedIntLaxEqual ¶
func StrictSignedIntLaxEqual[T StrictSignedInt](left T, right Value) Bool
Check whether the left signed integer is equal to right.
func StrictUnsignedIntLaxEqual ¶
func StrictUnsignedIntLaxEqual[T StrictUnsignedInt](left T, right Value) Bool
Check whether the left unsigned integer is equal to right.
type CallSiteInfo ¶
Contains details like the number of arguments or the method name of a particular call site.
func NewCallSiteInfo ¶
func NewCallSiteInfo(methodName Symbol, argCount int, namedArgs []Symbol) *CallSiteInfo
Create a new CallSiteInfo.
func (*CallSiteInfo) Class ¶
func (*CallSiteInfo) Class() *Class
func (*CallSiteInfo) Copy ¶
func (c *CallSiteInfo) Copy() Value
func (*CallSiteInfo) DirectClass ¶
func (*CallSiteInfo) DirectClass() *Class
func (*CallSiteInfo) Inspect ¶
func (c *CallSiteInfo) Inspect() string
func (*CallSiteInfo) InstanceVariables ¶
func (*CallSiteInfo) InstanceVariables() SymbolMap
func (*CallSiteInfo) NamedArgumentCount ¶
func (c *CallSiteInfo) NamedArgumentCount() int
func (*CallSiteInfo) PositionalArgumentCount ¶
func (c *CallSiteInfo) PositionalArgumentCount() int
func (*CallSiteInfo) SingletonClass ¶
func (*CallSiteInfo) SingletonClass() *Class
type Char ¶
type Char rune
Elk's Char value
func (Char) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (Char) Concat ¶
Concatenate another value with this character, creating a new string, and return the result. If the operation is illegal an error will be returned.
func (Char) DirectClass ¶
func (Char) GraphemeCount ¶
func (Char) GreaterThan ¶
Check whether c is greater than other and return an error if something went wrong.
func (Char) GreaterThanEqual ¶
Check whether c is greater than or equal to other and return an error if something went wrong.
func (Char) InstanceVariables ¶
func (Char) LessThan ¶
Check whether c is less than other and return an error if something went wrong.
func (Char) LessThanEqual ¶
Check whether c is less than or equal to other and return an error if something went wrong.
func (Char) Repeat ¶
Repeat this character n times and return a new string containing the result. If the operation is illegal an error will be returned.
func (Char) SingletonClass ¶
func (Char) StrictEqual ¶
Check whether s is strictly equal to other
type Class ¶
type Class struct { ConstantContainer MethodContainer ConstructorFunc ConstructorFunc Flags bitfield.BitField8 // contains filtered or unexported fields }
Represents an Elk Class.
var ArgumentErrorClass *Class
::Std::ArgumentError
Thrown when the arguments don't match the defined parameters for a given method.
var ArrayListClass *Class
::Std::ArrayList
Represents a dynamically sized array, that can shrink and grow.
var BeginlessClosedRangeClass *Class // ::Std::BeginlessClosedRange
var BeginlessOpenRangeClass *Class // ::Std::BeginlessOpenRange
var BigFloatClass *Class // ::Std::BigFloat
var BoolClass *Class // ::Std::Bool
var ClassClass *Class // ::Std::Class
var ClosedRangeClass *Class // ::Std::ClosedRange
var EndlessClosedRangeClass *Class // ::Std::EndlessClosedRange
var EndlessClosedRangeIteratorClass *Class
::Std::EndlessClosedRange::Iterator
EndlessClosedRange iterator class.
var EndlessOpenRangeClass *Class // ::Std::EndlessOpenRange
var EndlessOpenRangeIteratorClass *Class
::Std::EndlessOpenRange::Iterator
EndlessOpenRange iterator class.
var ErrorClass *Class
::Std::Error
Parent class for all errors that are automatically caught by a `catch` expression without type constraints.
var FalseClass *Class // ::Std::False
var Float32Class *Class // ::Std::Float64
var Float64Class *Class // ::Std::Float64
var FloatClass *Class // ::Std::Float
var FormatErrorClass *Class
::Std::FormatError
Thrown when a literal or interpreted string has an incorrect format.
var FunctionClass *Class // ::Std::Function
var GlobalObjectSingletonClass *Class
var HashMapClass *Class // ::Std::HashMap
var HashMapIteratorClass *Class // ::Std::HashMap::Iterator
var HashRecordClass *Class // ::Std::HashRecord
var HashRecordIteratorClass *Class // ::Std::HashRecord::Iterator
var HashSetClass *Class // ::Std::HashSet
var HashSetIteratorClass *Class // ::Std::HashSet::Iterator
var Int16Class *Class // ::Std::Int16
var Int32Class *Class // ::Std::Int32
var Int64Class *Class // ::Std::Int64
var Int8Class *Class // ::Std::Int8
var IntClass *Class // ::Std::Int
var InvalidTimezoneErrorClass *Class
::Std::InvalidTimezoneError
Thrown when a timezone wasn't found.
var LeftOpenRangeClass *Class // ::Std::LeftOpenRange
var MethodClass *Class // ::Std::Method
var MixinClass *Class // ::Std::Mixin
var ModifierMismatchErrorClass *Class
::Std::ModifierMismatchError
Thrown when a class was originally defined with some modifiers and later on reopened with different ones.
var ModuleClass *Class // ::Std::Module
var NilClass *Class // ::Std::Nil
var NoConstantErrorClass *Class
::Std::NoConstantError
Thrown after trying to read a nonexistent constant.
var NoMethodErrorClass *Class
::Std::NoMethodError
Thrown after attempting to call a method that is not available to the value.
var NotBuiltinErrorClass *Class
::Std::NotBuiltinError
Thrown when the called method is not builtin.
var NumericClass *Class // ::Std::Numeric
var ObjectClass *Class // ::Std::Object
var OpenRangeClass *Class // ::Std::OpenRange
var OutOfRangeErrorClass *Class
::Std::OutOfRangeError
Thrown when a numeric value is too large or too small to be used in a particular setting.
var PairClass *Class // ::Std::Pair
var PatternNotMatchedErrorClass *Class
::Std::PatternNotMatchedError
Thrown when a pattern was not matched in destructuring etc
var PrimitiveValueErrorClass *Class
::Std::PrimitiveValueError
Thrown when trying to access or set instance variables on a primitive object that cannot have instance variables.
var RedefinedConstantErrorClass *Class
::Std::RedefinedConstantError
Thrown after trying to redefine a constant.
var RegexClass *Class // ::Std::Regex
var RegexCompileErrorClass *Class
::Std::RegexCompileError
Thrown when a Regex could not be compiled.
var RightOpenRangeClass *Class // ::Std::RightOpenRange
var RightOpenRangeIteratorClass *Class
::Std::RightOpenRange::Iterator
RightOpenRange iterator class.
var SealedClassErrorClass *Class
::Std::SealedClassError
Thrown when trying to inherit from a sealed class.
var SealedMethodErrorClass *Class
::Std::SealedMethodError
Thrown when trying to override a sealed method.
var StringByteIteratorClass *Class // ::Std::String::ByteIterator
var StringCharIteratorClass *Class // ::Std::String::CharIterator
var StringClass *Class // ::Std::String
var SymbolClass *Class // ::Std::Symbol
var SymbolMapClass *Class // ::Std::SymbolMap
var TimeClass *Class // ::Std::Time
var TimezoneClass *Class // ::Std::Timezone
var TrueClass *Class // ::Std::True
var TypeErrorClass *Class
::Std::TypeError
Thrown when an argument given to a method has an incorrect type.
var UInt16Class *Class // ::Std::UInt16
var UInt32Class *Class // ::Std::UInt32
var UInt64Class *Class // ::Std::UInt64
var UInt8Class *Class // ::Std::UInt8
var UndefinedClass *Class
var ValueClass *Class // ::Std::Value
var ZeroDivisionErrorClass *Class
::Std::ZeroDivisionError
Thrown when an integer is divided by zero.
func NewSingletonClass ¶
func (*Class) CreateInstance ¶
Create a new instance of the class without initialising it.
func (*Class) DirectClass ¶
func (*Class) HasNoInstanceVariables ¶
Whether instances of this class can hold instance variables.
func (*Class) IncludeMixin ¶
Include the passed in mixin in this class.
func (*Class) InstanceVariables ¶
func (*Class) IsAbstract ¶
func (*Class) IsMixinProxy ¶
func (*Class) IsSingleton ¶
func (*Class) SetAbstract ¶
func (c *Class) SetAbstract()
func (*Class) SetDirectClass ¶
func (*Class) SetMixinProxy ¶
func (c *Class) SetMixinProxy()
func (*Class) SetNoInstanceVariables ¶
func (c *Class) SetNoInstanceVariables()
func (*Class) SetSingleton ¶
func (c *Class) SetSingleton()
func (*Class) SetSingletonName ¶
func (*Class) SingletonClass ¶
type ClassOption ¶
type ClassOption = func(*Class)
Class constructor option function
func ClassWithAbstract ¶
func ClassWithAbstract() ClassOption
func ClassWithConstants ¶
func ClassWithConstants(constants SymbolMap) ClassOption
func ClassWithConstructor ¶
func ClassWithConstructor(constructor ConstructorFunc) ClassOption
func ClassWithMetaClass ¶
func ClassWithMetaClass(metaClass *Class) ClassOption
func ClassWithMethods ¶
func ClassWithMethods(methods MethodMap) ClassOption
func ClassWithMixinProxy ¶
func ClassWithMixinProxy() ClassOption
func ClassWithName ¶
func ClassWithName(name string) ClassOption
func ClassWithNoInstanceVariables ¶
func ClassWithNoInstanceVariables() ClassOption
func ClassWithParent ¶
func ClassWithParent(parent *Class) ClassOption
func ClassWithSealed ¶
func ClassWithSealed() ClassOption
func ClassWithSingleton ¶
func ClassWithSingleton() ClassOption
type ClosedRange ¶
Represents a closed range eg. `5...2`
func NewClosedRange ¶
func NewClosedRange(from, to Value) *ClosedRange
Create a new closed range class.
func (*ClosedRange) Class ¶
func (*ClosedRange) Class() *Class
func (*ClosedRange) Copy ¶
func (r *ClosedRange) Copy() Value
func (*ClosedRange) DirectClass ¶
func (*ClosedRange) DirectClass() *Class
func (*ClosedRange) Inspect ¶
func (r *ClosedRange) Inspect() string
func (*ClosedRange) InstanceVariables ¶
func (r *ClosedRange) InstanceVariables() SymbolMap
func (*ClosedRange) SingletonClass ¶
func (*ClosedRange) SingletonClass() *Class
type ClosedRangeIterator ¶
type ClosedRangeIterator struct { Range *ClosedRange CurrentElement Value }
func NewClosedRangeIterator ¶
func NewClosedRangeIterator(r *ClosedRange) *ClosedRangeIterator
func NewClosedRangeIteratorWithCurrentElement ¶
func NewClosedRangeIteratorWithCurrentElement(r *ClosedRange, currentElement Value) *ClosedRangeIterator
func (*ClosedRangeIterator) Class ¶
func (*ClosedRangeIterator) Class() *Class
func (*ClosedRangeIterator) Copy ¶
func (r *ClosedRangeIterator) Copy() Value
func (*ClosedRangeIterator) DirectClass ¶
func (*ClosedRangeIterator) DirectClass() *Class
func (*ClosedRangeIterator) Inspect ¶
func (r *ClosedRangeIterator) Inspect() string
func (*ClosedRangeIterator) InstanceVariables ¶
func (*ClosedRangeIterator) InstanceVariables() SymbolMap
func (*ClosedRangeIterator) SingletonClass ¶
func (*ClosedRangeIterator) SingletonClass() *Class
type ConstantContainer ¶
Struct for embedding, contains fields shared by Module, Mixin, Class, Struct
func (*ConstantContainer) AddConstant ¶
func (m *ConstantContainer) AddConstant(name Symbol, val Value)
Set the constant with the specified name to the given value.
func (*ConstantContainer) AddConstantString ¶
func (m *ConstantContainer) AddConstantString(name string, val Value)
Set the constant with the specified name to the given value.
func (*ConstantContainer) PrintableName ¶
func (m *ConstantContainer) PrintableName() string
Return a human readable name.
type ConstructorFunc ¶
Function that creates a new instance.
type EndlessClosedRange ¶
type EndlessClosedRange struct {
From Value // start value
}
Represents an endless closed range eg. `5...`
func NewEndlessClosedRange ¶
func NewEndlessClosedRange(from Value) *EndlessClosedRange
Create a new endless closed range class.
func (*EndlessClosedRange) Class ¶
func (*EndlessClosedRange) Class() *Class
func (*EndlessClosedRange) Copy ¶
func (r *EndlessClosedRange) Copy() Value
func (*EndlessClosedRange) DirectClass ¶
func (*EndlessClosedRange) DirectClass() *Class
func (*EndlessClosedRange) Inspect ¶
func (r *EndlessClosedRange) Inspect() string
func (*EndlessClosedRange) InstanceVariables ¶
func (r *EndlessClosedRange) InstanceVariables() SymbolMap
func (*EndlessClosedRange) SingletonClass ¶
func (*EndlessClosedRange) SingletonClass() *Class
type EndlessClosedRangeIterator ¶
type EndlessClosedRangeIterator struct { Range *EndlessClosedRange CurrentElement Value }
func NewEndlessClosedRangeIterator ¶
func NewEndlessClosedRangeIterator(r *EndlessClosedRange) *EndlessClosedRangeIterator
func NewEndlessClosedRangeIteratorWithCurrentElement ¶
func NewEndlessClosedRangeIteratorWithCurrentElement(r *EndlessClosedRange, currentElement Value) *EndlessClosedRangeIterator
func (*EndlessClosedRangeIterator) Class ¶
func (*EndlessClosedRangeIterator) Class() *Class
func (*EndlessClosedRangeIterator) Copy ¶
func (r *EndlessClosedRangeIterator) Copy() Value
func (*EndlessClosedRangeIterator) DirectClass ¶
func (*EndlessClosedRangeIterator) DirectClass() *Class
func (*EndlessClosedRangeIterator) Inspect ¶
func (r *EndlessClosedRangeIterator) Inspect() string
func (*EndlessClosedRangeIterator) InstanceVariables ¶
func (*EndlessClosedRangeIterator) InstanceVariables() SymbolMap
func (*EndlessClosedRangeIterator) SingletonClass ¶
func (*EndlessClosedRangeIterator) SingletonClass() *Class
type EndlessOpenRange ¶
type EndlessOpenRange struct {
From Value // start value
}
Represents an endless open range eg. `5<..`
func NewEndlessOpenRange ¶
func NewEndlessOpenRange(from Value) *EndlessOpenRange
Create a new endless open range class.
func (*EndlessOpenRange) Class ¶
func (*EndlessOpenRange) Class() *Class
func (*EndlessOpenRange) Copy ¶
func (r *EndlessOpenRange) Copy() Value
func (*EndlessOpenRange) DirectClass ¶
func (*EndlessOpenRange) DirectClass() *Class
func (*EndlessOpenRange) Inspect ¶
func (r *EndlessOpenRange) Inspect() string
func (*EndlessOpenRange) InstanceVariables ¶
func (r *EndlessOpenRange) InstanceVariables() SymbolMap
func (*EndlessOpenRange) SingletonClass ¶
func (*EndlessOpenRange) SingletonClass() *Class
type EndlessOpenRangeIterator ¶
type EndlessOpenRangeIterator struct { Range *EndlessOpenRange CurrentElement Value }
func NewEndlessOpenRangeIterator ¶
func NewEndlessOpenRangeIterator(r *EndlessOpenRange) *EndlessOpenRangeIterator
func NewEndlessOpenRangeIteratorWithCurrentElement ¶
func NewEndlessOpenRangeIteratorWithCurrentElement(r *EndlessOpenRange, currentElement Value) *EndlessOpenRangeIterator
func (*EndlessOpenRangeIterator) Class ¶
func (*EndlessOpenRangeIterator) Class() *Class
func (*EndlessOpenRangeIterator) Copy ¶
func (r *EndlessOpenRangeIterator) Copy() Value
func (*EndlessOpenRangeIterator) DirectClass ¶
func (*EndlessOpenRangeIterator) DirectClass() *Class
func (*EndlessOpenRangeIterator) Inspect ¶
func (r *EndlessOpenRangeIterator) Inspect() string
func (*EndlessOpenRangeIterator) InstanceVariables ¶
func (*EndlessOpenRangeIterator) InstanceVariables() SymbolMap
func (*EndlessOpenRangeIterator) SingletonClass ¶
func (*EndlessOpenRangeIterator) SingletonClass() *Class
type Error ¶
type Error struct {
Object
}
var NotBuiltinError *Error
func NewArgumentTypeError ¶
Create a new error that signals that the type of the given argument is wrong.
func NewBitshiftOperandError ¶
Create a new error which signals that the given operand is not suitable for bit shifting
func NewCantAccessInstanceVariablesOnPrimitiveError ¶
Create a new error that signals that accessing instance variables of primitive values is impossible.
func NewCantCreateAnAliasForNonexistentMethod ¶
Create a new error that signals that the user tried to create an alias for a nonexistent method.
func NewCantOverrideASealedMethod ¶
Create a new error that signals that a method that is sealed cannot be overridden
func NewCantSetInstanceVariablesOnPrimitiveError ¶
Create a new error that signals that setting instance variables of primitive values is impossible.
func NewCapacityTypeError ¶
Create a new error which signals that the value can't be used as capacity.
func NewCoerceError ¶
Create a new error which signals that a value of one type cannot be coerced into the other type.
func NewDuplicatedArgumentError ¶
Create a new error that signals that an argument is duplicated
func NewIndexOutOfRangeError ¶
Create a new error that signals that the given index is out of range.
func NewInvalidSuperclassError ¶
Create a new error that signals that the given superclass is not a valid class object.
func NewIsNotClassError ¶
Create a new error that signals that the given value is not a class, even though it should be.
func NewIsNotClassOrMixinError ¶
Create a new error that signals that the given value is not a class or mixin, even though it should be.
func NewIsNotMixinError ¶
Create a new error that signals that the given value is not a mixin, even though it should be.
func NewIsNotModuleError ¶
Create a new error that signals that the given value is not a module, even though it should be.
func NewModifierMismatchError ¶
Create a new error that signals that the given class should have different modifiers.
func NewNegativeCapacityError ¶
Create a new error that signals that the given capacity should not be negative.
func NewNegativeIndicesInCollectionLiteralsError ¶
Create a new error that signals that negative indices cannot be used in collection literals.
func NewNoMethodError ¶
Create a new Std::NoMethodError.
func NewRedefinedConstantError ¶
Create a new Std::RedefinedConstantError
func NewRequiredArgumentMissingError ¶
Create a new error that signals that a required argument was not given.
func NewSealedClassError ¶
Create a new error that signals that the given superclass is not a valid class object.
func NewSingletonError ¶
Create a new error that signals that the given object cannot have a singleton class.
func NewSuperclassMismatchError ¶
Create a new error that signals that the given superclass doesn't match the original one.
func NewTooLargeCapacityError ¶
Create a new error that signals that the given capacity is too large.
func NewUnknownArgumentsError ¶
Create a new error that signals that some given arguments are not defined in the method.
func NewWrongArgumentCountError ¶
Create a new error that signals that the number of given arguments is wrong.
func NewWrongArgumentCountRangeError ¶
Create a new error that signals that the number of given arguments is not within the accepted range.
func NewWrongArgumentCountRestError ¶
Create a new error that signals that the number of given arguments is not within the accepted range. For methods with rest parameters.
func NewWrongPositionalArgumentCountError ¶
Create a new error that signals that the number of given arguments is not within the accepted range. For methods with rest parameters.
func NewZeroDivisionError ¶
func NewZeroDivisionError() *Error
Create a new error which signals that a the program tried to divide by zero.
func SetInSlice ¶
Set an element under the given index.
func StrictFloatDivide ¶
func StrictFloatDivide[T StrictFloat](left T, right Value) (T, *Error)
Divide a strict float by another value and return the result. If the operation is illegal an error will be returned.
func StrictFloatExponentiate ¶
func StrictFloatExponentiate[T StrictFloat](left T, right Value) (T, *Error)
Exponentiate a strict int by the right value.
func StrictFloatModulo ¶
func StrictFloatModulo[T StrictFloat](left T, right Value) (T, *Error)
Perform modulo on a strict integer and return the result. If the operation is illegal an error will be returned.
func StrictIntBitwiseAnd ¶
Perform a bitwise AND.
func StrictIntBitwiseAndNot ¶
Perform a bitwise AND NOT.
func StrictIntBitwiseOr ¶
Perform a bitwise OR.
func StrictIntBitwiseXor ¶
Perform a bitwise XOR.
func StrictIntDivide ¶
Divide a strict int by another value and return the result. If the operation is illegal an error will be returned.
func StrictIntExponentiate ¶
Exponentiate a strict int by the right value.
func StrictIntLeftBitshift ¶
Bitshift a strict int to the left.
func StrictIntLogicalRightBitshift ¶
func StrictIntLogicalRightBitshift[T StrictInt](left T, right Value, shiftFunc logicalShiftFunc[T]) (T, *Error)
Logically bitshift a strict int to the right.
func StrictIntModulo ¶
Perform modulo on a strict integer and return the result. If the operation is illegal an error will be returned.
func StrictIntRightBitshift ¶
Bitshift a strict int to the right.
func StrictNumericAdd ¶
func StrictNumericAdd[T StrictNumeric](left T, right Value) (T, *Error)
Add a strict numeric to another value and return the result. If the operation is illegal an error will be returned.
func StrictNumericMultiply ¶
func StrictNumericMultiply[T StrictNumeric](left T, right Value) (T, *Error)
Multiply a strict numeric by another value and return the result. If the operation is illegal an error will be returned.
func StrictNumericSubtract ¶
func StrictNumericSubtract[T StrictNumeric](left T, right Value) (T, *Error)
Subtract a strict numeric from another value and return the result. If the operation is illegal an error will be returned.
func StrictParseInt ¶
Parses a signed strict integer from a string using Elk syntax.
func StrictParseUint ¶
Parses an unsigned strict integer from a string using Elk syntax.
type FalseType ¶
type FalseType struct{}
func (FalseType) DirectClass ¶
func (FalseType) InstanceVariables ¶
func (FalseType) SingletonClass ¶
type Float ¶
type Float float64
Elk's Float value
func (Float) Cmp ¶
Cmp compares x and y and returns:
-1 if x < y 0 if x == y +1 if x > y
Panics if x or y are NaN.
func (Float) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (Float) DirectClass ¶
func (Float) Exponentiate ¶
Exponentiate by another value and return an error if something went wrong.
func (Float) GreaterThan ¶
Check whether f is greater than other and return an error if something went wrong.
func (Float) GreaterThanEqual ¶
Check whether f is greater than or equal to other and return an error if something went wrong.
func (Float) InstanceVariables ¶
func (Float) IsInf ¶
IsInf reports whether f is an infinity, according to sign. If sign > 0, IsInf reports whether f is positive infinity. If sign < 0, IsInf reports whether f is negative infinity. If sign == 0, IsInf reports whether f is either infinity.
func (Float) LessThan ¶
Check whether f is less than other and return an error if something went wrong.
func (Float) LessThanEqual ¶
Check whether f is less than or equal to other and return an error if something went wrong.
func (Float) Modulo ¶
Perform modulo by another numeric value and return an error if something went wrong.
func (Float) SingletonClass ¶
func (Float) StrictEqual ¶
Check whether f is strictly equal to other and return an error if something went wrong.
type Float32 ¶
type Float32 float32
Elk's Float32 value
func (Float32) DirectClass ¶
func (Float32) InstanceVariables ¶
func (Float32) IsInf ¶
IsInf reports whether f is an infinity, according to sign. If sign > 0, IsInf reports whether f is positive infinity. If sign < 0, IsInf reports whether f is negative infinity. If sign == 0, IsInf reports whether f is either infinity.
func (Float32) SingletonClass ¶
type Float64 ¶
type Float64 float64
Elk's Float64 value
func (Float64) DirectClass ¶
func (Float64) InstanceVariables ¶
func (Float64) IsInf ¶
IsInf reports whether f is an infinity, according to sign. If sign > 0, IsInf reports whether f is positive infinity. If sign < 0, IsInf reports whether f is negative infinity. If sign == 0, IsInf reports whether f is either infinity.
func (Float64) SingletonClass ¶
type Function ¶
type Function interface { Value // Names of all parameters in order Parameters() []Symbol // The number of parameters in total ParameterCount() int // The number of optional parameters with default values OptionalParameterCount() int // The number of parameters that appear after a rest parameter. // // -1 signals that there is no rest parameter // // 0 means that there are no more parameters after the rest param PostRestParameterCount() int // Whether the named rest parameter is present NamedRestParameter() bool }
Elk function object
type GlobalObjectType ¶
type GlobalObjectType struct{}
func (GlobalObjectType) Class ¶
func (GlobalObjectType) Class() *Class
func (GlobalObjectType) Copy ¶
func (g GlobalObjectType) Copy() Value
func (GlobalObjectType) DirectClass ¶
func (GlobalObjectType) DirectClass() *Class
func (GlobalObjectType) Inspect ¶
func (GlobalObjectType) Inspect() string
func (GlobalObjectType) InstanceVariables ¶
func (GlobalObjectType) InstanceVariables() SymbolMap
func (GlobalObjectType) SingletonClass ¶
func (GlobalObjectType) SingletonClass() *Class
type HashMap ¶
func NewHashMap ¶
func (*HashMap) DirectClass ¶
func (*HashMap) InstanceVariables ¶
func (*HashMap) LeftCapacity ¶
func (*HashMap) SingletonClass ¶
type HashMapIterator ¶
func NewHashMapIterator ¶
func NewHashMapIterator(hmap *HashMap) *HashMapIterator
func NewHashMapIteratorWithIndex ¶
func NewHashMapIteratorWithIndex(hmap *HashMap, index int) *HashMapIterator
func (*HashMapIterator) Class ¶
func (*HashMapIterator) Class() *Class
func (*HashMapIterator) Copy ¶
func (h *HashMapIterator) Copy() Value
func (*HashMapIterator) DirectClass ¶
func (*HashMapIterator) DirectClass() *Class
func (*HashMapIterator) Inspect ¶
func (h *HashMapIterator) Inspect() string
func (*HashMapIterator) InstanceVariables ¶
func (*HashMapIterator) InstanceVariables() SymbolMap
func (*HashMapIterator) Next ¶
func (h *HashMapIterator) Next() (Value, Value)
func (*HashMapIterator) SingletonClass ¶
func (*HashMapIterator) SingletonClass() *Class
type HashRecord ¶
type HashRecord HashMap
func NewHashRecord ¶
func NewHashRecord(capacity int) *HashRecord
func (*HashRecord) Class ¶
func (*HashRecord) Class() *Class
func (*HashRecord) Copy ¶
func (h *HashRecord) Copy() Value
func (*HashRecord) DirectClass ¶
func (*HashRecord) DirectClass() *Class
func (*HashRecord) Inspect ¶
func (h *HashRecord) Inspect() string
func (*HashRecord) InstanceVariables ¶
func (*HashRecord) InstanceVariables() SymbolMap
func (*HashRecord) Length ¶
func (h *HashRecord) Length() int
func (*HashRecord) SingletonClass ¶
func (*HashRecord) SingletonClass() *Class
type HashRecordIterator ¶
type HashRecordIterator struct { HashRecord *HashRecord Index int }
func NewHashRecordIterator ¶
func NewHashRecordIterator(hrec *HashRecord) *HashRecordIterator
func NewHashRecordIteratorWithIndex ¶
func NewHashRecordIteratorWithIndex(hrec *HashRecord, index int) *HashRecordIterator
func (*HashRecordIterator) Class ¶
func (*HashRecordIterator) Class() *Class
func (*HashRecordIterator) Copy ¶
func (h *HashRecordIterator) Copy() Value
func (*HashRecordIterator) DirectClass ¶
func (*HashRecordIterator) DirectClass() *Class
func (*HashRecordIterator) Inspect ¶
func (h *HashRecordIterator) Inspect() string
func (*HashRecordIterator) InstanceVariables ¶
func (*HashRecordIterator) InstanceVariables() SymbolMap
func (*HashRecordIterator) Next ¶
func (h *HashRecordIterator) Next() (Value, Value)
func (*HashRecordIterator) SingletonClass ¶
func (*HashRecordIterator) SingletonClass() *Class
type HashSet ¶
func NewHashSet ¶
func (*HashSet) DirectClass ¶
func (*HashSet) InstanceVariables ¶
func (*HashSet) LeftCapacity ¶
func (*HashSet) SingletonClass ¶
type HashSetIterator ¶
func NewHashSetIterator ¶
func NewHashSetIterator(set *HashSet) *HashSetIterator
func NewHashSetIteratorWithIndex ¶
func NewHashSetIteratorWithIndex(set *HashSet, index int) *HashSetIterator
func (*HashSetIterator) Class ¶
func (*HashSetIterator) Class() *Class
func (*HashSetIterator) Copy ¶
func (h *HashSetIterator) Copy() Value
func (*HashSetIterator) DirectClass ¶
func (*HashSetIterator) DirectClass() *Class
func (*HashSetIterator) Inspect ¶
func (h *HashSetIterator) Inspect() string
func (*HashSetIterator) InstanceVariables ¶
func (*HashSetIterator) InstanceVariables() SymbolMap
func (*HashSetIterator) Next ¶
func (h *HashSetIterator) Next() (Value, Value)
func (*HashSetIterator) SingletonClass ¶
func (*HashSetIterator) SingletonClass() *Class
type Int16 ¶
type Int16 int16
Elk's Int16 value
func (Int16) DirectClass ¶
func (Int16) InstanceVariables ¶
func (Int16) SingletonClass ¶
type Int32 ¶
type Int32 int32
Elk's Int32 value
func (Int32) DirectClass ¶
func (Int32) InstanceVariables ¶
func (Int32) SingletonClass ¶
type Int64 ¶
type Int64 int64
Elk's Int64 value
func (Int64) DirectClass ¶
func (Int64) InstanceVariables ¶
func (Int64) SingletonClass ¶
type Int8 ¶
type Int8 int8
Elk's Int8 value
func (Int8) DirectClass ¶
func (Int8) InstanceVariables ¶
func (Int8) SingletonClass ¶
type LeftOpenRange ¶
Represents a left open range eg. `5<..2`
func NewLeftOpenRange ¶
func NewLeftOpenRange(from, to Value) *LeftOpenRange
Create a new left open range class.
func (*LeftOpenRange) Class ¶
func (*LeftOpenRange) Class() *Class
func (*LeftOpenRange) Copy ¶
func (r *LeftOpenRange) Copy() Value
func (*LeftOpenRange) DirectClass ¶
func (*LeftOpenRange) DirectClass() *Class
func (*LeftOpenRange) Inspect ¶
func (r *LeftOpenRange) Inspect() string
func (*LeftOpenRange) InstanceVariables ¶
func (r *LeftOpenRange) InstanceVariables() SymbolMap
func (*LeftOpenRange) SingletonClass ¶
func (*LeftOpenRange) SingletonClass() *Class
type LeftOpenRangeIterator ¶
type LeftOpenRangeIterator struct { Range *LeftOpenRange CurrentElement Value }
func NewLeftOpenRangeIterator ¶
func NewLeftOpenRangeIterator(r *LeftOpenRange) *LeftOpenRangeIterator
func NewLeftOpenRangeIteratorWithCurrentElement ¶
func NewLeftOpenRangeIteratorWithCurrentElement(r *LeftOpenRange, currentElement Value) *LeftOpenRangeIterator
func (*LeftOpenRangeIterator) Class ¶
func (*LeftOpenRangeIterator) Class() *Class
func (*LeftOpenRangeIterator) Copy ¶
func (r *LeftOpenRangeIterator) Copy() Value
func (*LeftOpenRangeIterator) DirectClass ¶
func (*LeftOpenRangeIterator) DirectClass() *Class
func (*LeftOpenRangeIterator) Inspect ¶
func (r *LeftOpenRangeIterator) Inspect() string
func (*LeftOpenRangeIterator) InstanceVariables ¶
func (*LeftOpenRangeIterator) InstanceVariables() SymbolMap
func (*LeftOpenRangeIterator) SingletonClass ¶
func (*LeftOpenRangeIterator) SingletonClass() *Class
type Method ¶
type Method interface { Value Function IsSealed() bool // Whether the method is non-overridable SetSealed() // Name of the method Name() Symbol }
Elk Method object
type MethodContainer ¶
func (*MethodContainer) AttachMethod ¶
func (m *MethodContainer) AttachMethod(name Symbol, method Method) *Error
Attaches the given method under the given name.
func (*MethodContainer) CanOverride ¶
func (m *MethodContainer) CanOverride(name Symbol) bool
func (*MethodContainer) DefineAlias ¶
func (m *MethodContainer) DefineAlias(newMethodName, oldMethodName Symbol) *Error
Define an alternative name for an existing method.
func (*MethodContainer) DefineAliasString ¶
func (m *MethodContainer) DefineAliasString(newMethodName, oldMethodName string) *Error
Define an alternative name for an existing method.
func (*MethodContainer) LookupMethod ¶
func (m *MethodContainer) LookupMethod(name Symbol) Method
Search for a method with the given name in this container and its ancestors.
func (*MethodContainer) Superclass ¶
func (m *MethodContainer) Superclass() *Class
Get the superclass (skipping any mixin proxies)
type Mixin ¶
type Mixin struct { ConstantContainer MethodContainer // contains filtered or unexported fields }
Represents an Elk Mixin.
var ComparableMixin *Mixin // ::Std::Comparable
var ListMixin *Mixin // ::Std::List
var MapMixin *Mixin // ::Std::Map
var RangeMixin *Mixin // ::Std::Range
var RecordMixin *Mixin // ::Std::Record
var SetMixin *Mixin // ::Std::Set
var TupleMixin *Mixin // ::Std::Tuple
func (*Mixin) CreateProxyClass ¶
Create a proxy class that has a pointer to the method map of this mixin.
Returns two values, the head and tail proxy classes. This is because of the fact that it's possible to include one mixin in another, so there is an entire inheritance chain.
func (*Mixin) DirectClass ¶
func (*Mixin) IncludeMixin ¶
Include the passed in mixin in this mixin.
func (*Mixin) InstanceVariables ¶
func (*Mixin) SingletonClass ¶
type MixinOption ¶
type MixinOption = func(*Mixin)
Mixin constructor option function
func MixinWithClass ¶
func MixinWithClass(class *Class) MixinOption
func MixinWithConstants ¶
func MixinWithConstants(constants SymbolMap) MixinOption
func MixinWithMethods ¶
func MixinWithMethods(methods MethodMap) MixinOption
func MixinWithName ¶
func MixinWithName(name string) MixinOption
func MixinWithParent ¶
func MixinWithParent(parent *Class) MixinOption
type Module ¶
type Module struct { ConstantContainer // contains filtered or unexported fields }
Represents an Elk Module.
var RootModule *Module // ::Root
var StdModule *Module // ::Std
func NewModuleWithOptions ¶
func NewModuleWithOptions(opts ...ModuleOption) *Module
Create a new module.
func (*Module) DirectClass ¶
func (*Module) InstanceVariables ¶
func (*Module) SetDirectClass ¶
func (*Module) SingletonClass ¶
type ModuleOption ¶
type ModuleOption func(*Module)
Module constructor option function.
func ModuleWithClass ¶
func ModuleWithClass(class *Class) ModuleOption
func ModuleWithConstants ¶
func ModuleWithConstants(constants SymbolMap) ModuleOption
func ModuleWithName ¶
func ModuleWithName(name string) ModuleOption
func ModuleWithSingletonClass ¶
func ModuleWithSingletonClass() ModuleOption
type NilType ¶
type NilType struct{}
func (NilType) DirectClass ¶
func (NilType) InstanceVariables ¶
func (NilType) SingletonClass ¶
type Object ¶
type Object struct {
// contains filtered or unexported fields
}
func (*Object) DirectClass ¶
func (*Object) InstanceVariables ¶
func (*Object) SingletonClass ¶
type ObjectOption ¶
type ObjectOption = func(*Object)
Class constructor option function
func ObjectWithClass ¶
func ObjectWithClass(class *Class) ObjectOption
func ObjectWithInstanceVariables ¶
func ObjectWithInstanceVariables(ivars SymbolMap) ObjectOption
type OpenRange ¶
Represents an open range eg. `5<.<2`
func (*OpenRange) DirectClass ¶
func (*OpenRange) InstanceVariables ¶
func (*OpenRange) SingletonClass ¶
type OpenRangeIterator ¶
func NewOpenRangeIterator ¶
func NewOpenRangeIterator(r *OpenRange) *OpenRangeIterator
func NewOpenRangeIteratorWithCurrentElement ¶
func NewOpenRangeIteratorWithCurrentElement(r *OpenRange, currentElement Value) *OpenRangeIterator
func (*OpenRangeIterator) Class ¶
func (*OpenRangeIterator) Class() *Class
func (*OpenRangeIterator) Copy ¶
func (r *OpenRangeIterator) Copy() Value
func (*OpenRangeIterator) DirectClass ¶
func (*OpenRangeIterator) DirectClass() *Class
func (*OpenRangeIterator) Inspect ¶
func (r *OpenRangeIterator) Inspect() string
func (*OpenRangeIterator) InstanceVariables ¶
func (*OpenRangeIterator) InstanceVariables() SymbolMap
func (*OpenRangeIterator) SingletonClass ¶
func (*OpenRangeIterator) SingletonClass() *Class
type Pair ¶
func (*Pair) DirectClass ¶
func (*Pair) InstanceVariables ¶
func (*Pair) SingletonClass ¶
type Regex ¶
Elk's compiled regex
func (*Regex) DirectClass ¶
func (*Regex) InstanceVariables ¶
func (*Regex) SingletonClass ¶
func (*Regex) ToStringWithFlags ¶
func (*Regex) WriteSourceTo ¶
func (r *Regex) WriteSourceTo(w io.StringWriter)
type RightOpenRange ¶
Represents a right open range eg. `5..<2`
func NewRightOpenRange ¶
func NewRightOpenRange(from, to Value) *RightOpenRange
Create a new right open range class.
func (*RightOpenRange) Class ¶
func (*RightOpenRange) Class() *Class
func (*RightOpenRange) Copy ¶
func (r *RightOpenRange) Copy() Value
func (*RightOpenRange) DirectClass ¶
func (*RightOpenRange) DirectClass() *Class
func (*RightOpenRange) Inspect ¶
func (r *RightOpenRange) Inspect() string
func (*RightOpenRange) InstanceVariables ¶
func (r *RightOpenRange) InstanceVariables() SymbolMap
func (*RightOpenRange) SingletonClass ¶
func (*RightOpenRange) SingletonClass() *Class
type RightOpenRangeIterator ¶
type RightOpenRangeIterator struct { Range *RightOpenRange CurrentElement Value }
func NewRightOpenRangeIterator ¶
func NewRightOpenRangeIterator(r *RightOpenRange) *RightOpenRangeIterator
func NewRightOpenRangeIteratorWithCurrentElement ¶
func NewRightOpenRangeIteratorWithCurrentElement(r *RightOpenRange, currentElement Value) *RightOpenRangeIterator
func (*RightOpenRangeIterator) Class ¶
func (*RightOpenRangeIterator) Class() *Class
func (*RightOpenRangeIterator) Copy ¶
func (r *RightOpenRangeIterator) Copy() Value
func (*RightOpenRangeIterator) DirectClass ¶
func (*RightOpenRangeIterator) DirectClass() *Class
func (*RightOpenRangeIterator) Inspect ¶
func (r *RightOpenRangeIterator) Inspect() string
func (*RightOpenRangeIterator) InstanceVariables ¶
func (*RightOpenRangeIterator) InstanceVariables() SymbolMap
func (*RightOpenRangeIterator) SingletonClass ¶
func (*RightOpenRangeIterator) SingletonClass() *Class
type SimpleInt ¶
type SimpleInt interface { SmallInt | Int64 | Int32 | Int16 | Int8 | UInt64 | UInt32 | UInt16 | UInt8 Value }
All simple Elk integer types (without BigInt)
type SmallInt ¶
type SmallInt int64
Elk's SmallInt value
func (SmallInt) AddOverflow ¶
Add two small ints and check for overflow/underflow.
func (SmallInt) BitwiseAnd ¶
Perform a bitwise AND with another integer value and return an error if something went wrong.
func (SmallInt) BitwiseAndNot ¶
Perform a bitwise AND NOT with another integer value and return an error if something went wrong.
func (SmallInt) BitwiseOr ¶
Perform a bitwise OR with another integer value and return an error if something went wrong.
func (SmallInt) BitwiseXor ¶
Perform a bitwise XOR with another integer value and return an error if something went wrong.
func (SmallInt) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (SmallInt) DirectClass ¶
func (SmallInt) DivideOverflow ¶
Divide two small ints and check for overflow/underflow.
func (SmallInt) Exponentiate ¶
Exponentiate by another value and return an error if something went wrong.
func (SmallInt) GreaterThan ¶
Check whether i is greater than other and return an error if something went wrong.
func (SmallInt) GreaterThanEqual ¶
Check whether i is greater than or equal to other and return an error if something went wrong.
func (SmallInt) InstanceVariables ¶
func (SmallInt) LeftBitshift ¶
Bitshift to the left by another integer value and return an error if something went wrong.
func (SmallInt) LessThan ¶
Check whether i is less than other and return an error if something went wrong.
func (SmallInt) LessThanEqual ¶
Check whether i is less than or equal to other and return an error if something went wrong.
func (SmallInt) Modulo ¶
Perform modulo by another numeric value and return an error if something went wrong.
func (SmallInt) MultiplyOverflow ¶
Multiply two small ints and check for overflow/underflow.
func (SmallInt) RightBitshift ¶
Bitshift to the right by another integer value and return an error if something went wrong.
func (SmallInt) SingletonClass ¶
func (SmallInt) StrictEqual ¶
Check whether i is strictly equal to other
func (SmallInt) SubtractOverflow ¶
Subtract two small ints and check for overflow/underflow.
type StrictFloat ¶
Strict floats are sized and cannot be automatically coerced to other types.
type StrictNumeric ¶
type StrictNumeric interface { Float64 | Float32 | Int64 | Int32 | Int16 | Int8 | UInt64 | UInt32 | UInt16 | UInt8 Value }
Strict numerics are sized and cannot be automatically coerced to other types.
type StrictSignedInt ¶
Strict signed integers are sized and cannot be automatically coerced to other types.
type StrictUnsignedInt ¶
Strict unsigned integers are sized and cannot be automatically coerced to other types.
type String ¶
type String string
Elk's String value
func (String) Compare ¶
Returns 1 if i is greater than other Returns 0 if both are equal. Returns -1 if i is less than other. Returns nil if the comparison was impossible (NaN)
func (String) Concat ¶
Concatenate another value with this string and return the result. If the operation is illegal an error will be returned.
func (String) DirectClass ¶
func (String) GraphemeAt ¶
Get the grapheme under the given index.
func (String) GraphemeAtInt ¶
Get the grapheme under the given index.
func (String) GraphemeCount ¶
Returns the number of grapheme clusters present in the string.
func (String) GreaterThan ¶
Check whether s is greater than other and return an error if something went wrong.
func (String) GreaterThanEqual ¶
Check whether s is greater than or equal to other and return an error if something went wrong.
func (String) InstanceVariables ¶
func (String) LessThan ¶
Check whether s is less than other and return an error if something went wrong.
func (String) LessThanEqual ¶
Check whether s is less than or equal to other and return an error if something went wrong.
func (String) RemoveSuffix ¶
Return a copy of the string without the given suffix.
func (String) Repeat ¶
Repeat the content of this string n times and return a new string containing the result. If the operation is illegal an error will be returned.
func (String) ReverseChars ¶
Reverse the string while preserving the UTF-8 chars.
func (String) ReverseGraphemes ¶
Reverse the string while preserving the grapheme clusters.
func (String) SingletonClass ¶
func (String) StrictEqual ¶
Check whether s is strictly equal to other
type StringByteIterator ¶
func NewStringByteIterator ¶
func NewStringByteIterator(str String) *StringByteIterator
func NewStringByteIteratorWithByteOffset ¶
func NewStringByteIteratorWithByteOffset(str String, offset int) *StringByteIterator
func (*StringByteIterator) Class ¶
func (*StringByteIterator) Class() *Class
func (*StringByteIterator) Copy ¶
func (s *StringByteIterator) Copy() Value
func (*StringByteIterator) DirectClass ¶
func (*StringByteIterator) DirectClass() *Class
func (*StringByteIterator) Inspect ¶
func (s *StringByteIterator) Inspect() string
func (*StringByteIterator) InstanceVariables ¶
func (*StringByteIterator) InstanceVariables() SymbolMap
func (*StringByteIterator) Next ¶
func (s *StringByteIterator) Next() (Value, Value)
func (*StringByteIterator) SingletonClass ¶
func (*StringByteIterator) SingletonClass() *Class
type StringCharIterator ¶
func NewStringCharIterator ¶
func NewStringCharIterator(str String) *StringCharIterator
func NewStringCharIteratorWithByteOffset ¶
func NewStringCharIteratorWithByteOffset(str String, offset int) *StringCharIterator
func (*StringCharIterator) Class ¶
func (*StringCharIterator) Class() *Class
func (*StringCharIterator) Copy ¶
func (s *StringCharIterator) Copy() Value
func (*StringCharIterator) DirectClass ¶
func (*StringCharIterator) DirectClass() *Class
func (*StringCharIterator) Inspect ¶
func (s *StringCharIterator) Inspect() string
func (*StringCharIterator) InstanceVariables ¶
func (*StringCharIterator) InstanceVariables() SymbolMap
func (*StringCharIterator) Next ¶
func (s *StringCharIterator) Next() (Value, Value)
func (*StringCharIterator) SingletonClass ¶
func (*StringCharIterator) SingletonClass() *Class
type Symbol ¶
type Symbol int
Numerical ID of a particular symbol.
func (Symbol) DirectClass ¶
func (Symbol) InspectContent ¶
func (Symbol) InstanceVariables ¶
func (Symbol) SingletonClass ¶
func (Symbol) StrictEqual ¶
Check whether s is equal to other
type SymbolMap ¶
Simple map with symbol keys.
func (SymbolMap) DeleteString ¶
func (SymbolMap) DirectClass ¶
func (SymbolMap) InstanceVariables ¶
func (SymbolMap) SingletonClass ¶
type SymbolTableOption ¶
type SymbolTableOption func(*SymbolTableStruct)
func SymbolTableWithIdTable ¶
func SymbolTableWithIdTable(idTable []string) SymbolTableOption
func SymbolTableWithNameTable ¶
func SymbolTableWithNameTable(nameTable map[string]Symbol) SymbolTableOption
type SymbolTableStruct ¶
type SymbolTableStruct struct {
// contains filtered or unexported fields
}
Data structure that holds Elk Symbols.
var SymbolTable *SymbolTableStruct = NewSymbolTable()
The global Symbol Table of the Elk interpreter.
func NewSymbolTable ¶
func NewSymbolTable(opts ...SymbolTableOption) *SymbolTableStruct
func (*SymbolTableStruct) Add ¶
func (s *SymbolTableStruct) Add(name string) Symbol
Add a new symbol with the specified name. This function is idempotent, if the Symbol already exists nothing happens and a pointer to it gets returned. This function is thread-safe.
func (*SymbolTableStruct) Exists ¶
func (s *SymbolTableStruct) Exists(name string) bool
Check if a symbol with the given name exists. This function is thread-safe.
func (*SymbolTableStruct) ExistsId ¶
func (s *SymbolTableStruct) ExistsId(symbol Symbol) bool
Check if a given symbol exists.
type Time ¶
Elk's Time value
func (Time) AbbreviatedMonthName ¶
func (Time) AbbreviatedWeekdayName ¶
func (Time) Attosecond ¶
func (Time) DirectClass ¶
func (Time) Femtosecond ¶
func (Time) GreaterThan ¶
Check whether t is greater than other and return an error if something went wrong.
func (Time) GreaterThanEqual ¶
Check whether t is greater than or equal to other and return an error if something went wrong.
func (Time) ISOYearLastTwo ¶
func (Time) InstanceVariables ¶
func (Time) IsSaturday ¶
func (Time) IsThursday ¶
func (Time) IsWednesday ¶
func (Time) LessThan ¶
Check whether t is less than other and return an error if something went wrong.
func (Time) LessThanEqual ¶
Check whether t is less than or equal to other and return an error if something went wrong.
func (Time) MeridiemLowercase ¶
func (Time) Microsecond ¶
func (Time) Millisecond ¶
func (Time) MustFormat ¶
func (Time) Nanosecond ¶
func (Time) Picosecond ¶
func (Time) SingletonClass ¶
func (Time) StrictEqual ¶
func (Time) UnixAttoseconds ¶
func (Time) UnixFemtoseconds ¶
func (Time) UnixMicroseconds ¶
func (Time) UnixMilliseconds ¶
func (Time) UnixNanoseconds ¶
func (Time) UnixPicoseconds ¶
func (Time) UnixSeconds ¶
func (Time) UnixYoctoseconds ¶
func (Time) UnixZeptoseconds ¶
func (Time) WeekFromMonday ¶
The week number of the current year as a decimal number, range 00 to 53, starting with the first Monday as the first day of week 01.
func (Time) WeekFromSunday ¶
The week number of the current year as a decimal number, range 00 to 53, starting with the first Sunday as the first day of week 01.
func (Time) WeekdayFromMonday ¶
Specifies the day of the week (Monday = 1, ...).
func (Time) WeekdayFromSunday ¶
Specifies the day of the week (Sunday = 0, ...).
func (Time) WeekdayName ¶
func (Time) YearLastTwo ¶
func (Time) Yoctosecond ¶
func (Time) Zeptosecond ¶
func (Time) ZoneAbbreviatedName ¶
func (Time) ZoneOffsetHourMinutes ¶
func (Time) ZoneOffsetHours ¶
func (Time) ZoneOffsetSeconds ¶
type Timezone ¶
Elk's Timezone value
func MustLoadTimezone ¶
func (*Timezone) DirectClass ¶
func (*Timezone) InstanceVariables ¶
func (*Timezone) SingletonClass ¶
func (*Timezone) ToGoLocation ¶
type TrueType ¶
type TrueType struct{}
func (TrueType) DirectClass ¶
func (TrueType) InstanceVariables ¶
func (TrueType) SingletonClass ¶
type UInt16 ¶
type UInt16 uint16
Elk's UInt16 value
func (UInt16) DirectClass ¶
func (UInt16) InstanceVariables ¶
func (UInt16) SingletonClass ¶
type UInt32 ¶
type UInt32 uint32
Elk's UInt32 value
func (UInt32) DirectClass ¶
func (UInt32) InstanceVariables ¶
func (UInt32) SingletonClass ¶
type UInt64 ¶
type UInt64 uint64
Elk's UInt64 value
func (UInt64) DirectClass ¶
func (UInt64) InstanceVariables ¶
func (UInt64) SingletonClass ¶
type UInt8 ¶
type UInt8 uint8
Elk's UInt8 value
func (UInt8) DirectClass ¶
func (UInt8) InstanceVariables ¶
func (UInt8) SingletonClass ¶
type UndefinedType ¶
type UndefinedType struct{}
func (UndefinedType) Class ¶
func (UndefinedType) Class() *Class
func (UndefinedType) Copy ¶
func (u UndefinedType) Copy() Value
func (UndefinedType) DirectClass ¶
func (UndefinedType) DirectClass() *Class
func (UndefinedType) Inspect ¶
func (UndefinedType) Inspect() string
func (UndefinedType) InstanceVariables ¶
func (UndefinedType) InstanceVariables() SymbolMap
func (UndefinedType) SingletonClass ¶
func (UndefinedType) SingletonClass() *Class
type Value ¶
type Value interface { Class() *Class // Return the class of the value DirectClass() *Class // Return the direct class of this value that will be searched for methods first SingletonClass() *Class // Return the singleton class of this value that holds methods unique to this object Inspect() string // Returns the string representation of the value InstanceVariables() SymbolMap // Returns the map of instance vars of this value, nil if value doesn't support instance vars Copy() Value // Creates a shallow copy of the value. If the value is immutable, no copying should be done, the same value should be returned. }
BENCHMARK: self-implemented tagged union Elk Value
func BitwiseNot ¶
Perform bitwise not on a value When successful returns result. When there are no builtin negation functions for the given type returns nil.
func ClassConstructor ¶
Used by the VM, create a new class.
func Decrement ¶
Decrement a value When successful returns result. When there are no builtin negation functions for the given type returns nil.
func Equal ¶
Check whether left is equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
func Increment ¶
Increment a value When successful returns result. When there are no builtin negation functions for the given type returns nil.
func LaxEqual ¶
Check whether left is equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
func LaxNotEqual ¶
Check whether left is not equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
func MixinConstructor ¶
Used by the VM, create a new mixin.
func ModuleConstructor ¶
Used by the VM, create a new module value.
func Negate ¶
Negate a value When successful returns result. When there are no builtin negation functions for the given type returns nil.
func NotEqual ¶
Check whether left is not equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
func StrictEqual ¶
Check whether left is strictly equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
func StrictNotEqual ¶
Check whether left is strictly not equal to right. When successful returns (result). When there are no builtin addition functions for the given type returns (nil).
Source Files ¶
- array_list.go
- array_tuple.go
- beginless_closed_range.go
- beginless_open_range.go
- big_float.go
- big_int.go
- bool.go
- call_site_info.go
- char.go
- class.go
- closed_range.go
- comparable.go
- constant_container.go
- endless_closed_range.go
- endless_open_range.go
- error.go
- false.go
- float.go
- float32.go
- float64.go
- function.go
- global_object.go
- hash_map.go
- hash_record.go
- hash_set.go
- init.go
- int.go
- int16.go
- int32.go
- int64.go
- int8.go
- left_open_range.go
- list.go
- map.go
- method.go
- method_container.go
- method_map.go
- mixin.go
- module.go
- nil.go
- numeric.go
- object.go
- open_range.go
- pair.go
- range.go
- record.go
- regex.go
- right_open_range.go
- set.go
- small_int.go
- strict_numeric.go
- string.go
- symbol.go
- symbol_map.go
- symbol_table.go
- time.go
- timezone.go
- true.go
- tuple.go
- uint16.go
- uint32.go
- uint64.go
- uint8.go
- undefined.go
- value.go
Directories ¶
Path | Synopsis |
---|---|
Package timescanner implements a tokenizer/lexer that analyses Elk time format strings.
|
Package timescanner implements a tokenizer/lexer that analyses Elk time format strings. |