64-bit signed integer type with full arithmetic and comparison support.
Constructors
Method
Parameters
Returns
Description
Constructor
—
Integer^
Creates integer with value 0
Constructor
val: NativeType<"int64">%
Integer^
Creates integer from native int64
Arithmetic Operations
Method
Parameters
Returns
Description
add
other: Integer&
Integer^
Returns sum of this and other
subtract
other: Integer&
Integer^
Returns difference
multiply
other: Integer&
Integer^
Returns product
divide
other: Integer&
Integer^
Returns quotient
modulo
other: Integer&
Integer^
Returns remainder
negate
—
Integer^
Returns negated value
abs
—
Integer^
Returns absolute value
Assignment Operations
Method
Parameters
Returns
Description
addAssign
other: Integer&
Integer^
Adds and assigns
subtractAssign
other: Integer&
Integer^
Subtracts and assigns
multiplyAssign
other: Integer&
Integer^
Multiplies and assigns
divideAssign
other: Integer&
Integer^
Divides and assigns
moduloAssign
other: Integer&
Integer^
Modulo and assigns
Comparison Operations
Method
Parameters
Returns
Description
equals
other: Integer&
Bool^
Tests equality
lessThan
other: Integer&
Bool^
Tests if less than
greaterThan
other: Integer&
Bool^
Tests if greater than
lessOrEqual
other: Integer&
Bool^
Tests if less or equal
greaterOrEqual
other: Integer&
Bool^
Tests if greater or equal
Conversion
Method
Parameters
Returns
Description
toInt64
—
NativeType<"int64">%
Returns raw int64 value
toInt32
—
NativeType<"int32">^
Returns as int32
toString
—
String^
Converts to string representation
hash
—
NativeType<"int64">^
Returns hash code (Hashable)
xxml
Instantiate Integer^ As <a> = Integer::Constructor(10);
Instantiate Integer^ As <b> = Integer::Constructor(3);
Instantiate Integer^ As <sum> = a.add(b); // 13
Instantiate Integer^ As <product> = a.multiply(b); // 30
Instantiate Integer^ As <absolute> = a.negate().abs(); // 10
Run System::Console::printLine(sum.toString());
String
Owned string type with memory management. Marked as Compiletime Final.
Constructors
Method
Parameters
Returns
Description
Constructor
—
String^
Creates empty string
Constructor
cstr: NativeType<"cstr">%
String^
Creates from C string literal
FromCString
ptr: NativeType<"ptr">
String^
Creates from pointer
Properties & Access
Method
Parameters
Returns
Description
length
—
Integer^
Returns character count
isEmpty
—
Bool^
Returns true if length is 0
charAt
index: Integer&
String^
Returns character at index
toCString
—
NativeType<"cstr">%
Returns raw C string pointer
Operations
Method
Parameters
Returns
Description
append
other: String&
String^
Concatenates strings
copy
—
String^
Creates a deep copy
equals
other: String&
Bool^
Tests string equality
hash
—
NativeType<"int64">^
Returns hash code
dispose
—
None
Frees underlying memory
xxml
Instantiate String^ As <greeting> = String::Constructor("Hello");
Instantiate String^ As <name> = String::Constructor("World");
Instantiate String^ As <message> = greeting.append(String::Constructor(", ")).append(name);
Instantiate Integer^ As <len> = message.length();
If (message.isEmpty().not().toBool())
{
Run System::Console::printLine(message);
}
Bool
Boolean type representing true or false values.
Constructors
Method
Parameters
Returns
Description
Constructor
—
Bool^
Creates false value
Constructor
val: NativeType<"bool">%
Bool^
Creates from native bool
Logical Operations
Method
Parameters
Returns
Description
and
other: Bool&
Bool^
Logical AND
or
other: Bool&
Bool^
Logical OR
not
—
Bool^
Logical NOT
xor
other: Bool&
Bool^
Exclusive OR
Comparison & Conversion
Method
Parameters
Returns
Description
equals
other: Bool&
Bool^
Tests equality
toBool
—
NativeType<"bool">%
Returns raw boolean
getValue
—
NativeType<"bool">%
Alias for toBool
toInteger
—
Integer^
Returns 1 for true, 0 for false
xxml
Instantiate Bool^ As <a> = Bool::Constructor(true);
Instantiate Bool^ As <b> = Bool::Constructor(false);
Instantiate Bool^ As <result> = a.and(b); // false
Instantiate Bool^ As <either> = a.or(b); // true
Instantiate Bool^ As <negated> = a.not(); // false
If (a.toBool())
{
Run System::Console::printLine(String::Constructor("a is true"));
}
Float
32-bit single-precision floating point number.
Constructors
Method
Parameters
Returns
Description
Constructor
—
Float^
Creates 0.0 value
Constructor
val: NativeType<"float">%
Float^
Creates from native float
Arithmetic Operations
Method
Parameters
Returns
Description
add
other: Float&
Float^
Addition
subtract
other: Float&
Float^
Subtraction
multiply
other: Float&
Float^
Multiplication
divide
other: Float&
Float^
Division
negate
—
Float^
Negation
abs
—
Float^
Absolute value
Comparison
Method
Parameters
Returns
Description
equals
other: Float&
Bool^
Tests equality
lessThan
other: Float&
Bool^
Less than comparison
greaterThan
other: Float&
Bool^
Greater than comparison
Conversion
Method
Parameters
Returns
Description
toFloat
—
NativeType<"float">%
Returns raw float
toInteger
—
Integer^
Converts to Integer (truncates)
toDouble
—
Double
Converts to Double
toString
—
String^
String representation
Double
64-bit double-precision floating point number.
Constructors
Method
Parameters
Returns
Description
Constructor
—
Double^
Creates 0.0 value
Constructor
val: NativeType<"double">%
Double^
Creates from native double
Arithmetic Operations
Method
Parameters
Returns
Description
add
other: Double&
Double^
Addition
subtract
other: Double&
Double^
Subtraction
multiply
other: Double&
Double^
Multiplication
divide
other: Double&
Double^
Division
negate
—
Double^
Negation
abs
—
Double^
Absolute value
Comparison
Method
Parameters
Returns
Description
equals
other: Double&
Bool^
Tests equality
lessThan
other: Double&
Bool^
Less than
greaterThan
other: Double&
Bool^
Greater than
lessOrEqual
other: Double&
Bool^
Less or equal
greaterOrEqual
other: Double&
Bool^
Greater or equal
Conversion
Method
Parameters
Returns
Description
toDouble
—
NativeType<"double">%
Returns raw double
getValue
—
NativeType<"double">%
Alias for toDouble
toInteger
—
Integer^
Converts to Integer
toFloat
—
Float
Converts to Float
toString
—
String^
String representation
xxml
Instantiate Double^ As <pi> = Double::Constructor(3.14159265359);
Instantiate Double^ As <radius> = Double::Constructor(5.0);
Instantiate Double^ As <area> = pi.multiply(radius).multiply(radius);
Run System::Console::printLine(area.toString());
Hashable
Constraint interface for types that can be used as HashMap keys or Set elements.
Types implementing Hashable must provide a hash() method that returns a consistent integer value for the same object.
Hash implementations must be deterministic—calling hash() multiple times on the same object must return the same value. Built-in types like Integer andString already implement this constraint.
Equatable
Constraint interface for types that support equality comparison.
Types implementing Equatable must provide an equals() method. Required for HashMap key comparison and general equality testing.