Standardlibrary Types

The Standard library is intended to be the list of usefull types and funcions that most GameDevs May need.

All of the Standardlibrary is Under The ULang Namespace.

use ULang;

All of the Standardlibrary Part of StandardLibarary Module By UCodeLang.

import UCodeLang::StandardLibarary[0:0:0];

Containers

NameTypeDescription
Array<T,(uintptr:Size)>Generic ClassA Fixed-size sequence container.
Vector<T>Generic ClassUsed to store a List of Items.
String_t<T>Generic Class.Used as a base to store a sequence of contiguous sequence of any char type.

Alias Types

NameTypeDescription
StringSpanAliasSame As StringSpan_t<char>. Used refer to a contiguous sequence characters (text).
String8SpanAliasSame As StringSpan_t<uft8>. Used refer to a contiguous sequence of utf8 characters (text).
String16SpanAliasSame As StringSpan_t<uft16>. Used refer to a contiguous sequence of utf16 characters (text).
String32SpanAliasSame As StringSpan_t<uft32>. Used refer to a contiguous sequence of utf32 characters (text).

ReferenceTypes

NameTypeDescription
StringSpan_t<T>Generic Classused as a base to reference a contiguous sequence of any char type.
Span<T>Generic Classused store to reference a contiguous sequence of type T.

Math Types

NameTypeDescription
MathClassContains Mathematical Functions.
Vec2AliasSame As Vec2_t<float>. A vector with X and Y.
Vec3AliasSame As Vec3_t<float>. A vector with X and Y.
Vec2iAliasSame As Vec2i_t<int>. A vector with X , Y and Z for float types.
Vec3iAliasSame As Vec2i_t<int>. A Vector with X , Y and Z for int types.
Vec2_t<T>Generic ClassA Vector Base with X , Y for int types.
Vec3_t<T>Generic ClassA Vector Base with X , Y , Z for float types.
Vec2i_t<T>Generic ClassA Vector Base with X , Y. for int types.
Vec3i_t<T>Generic ClassA Vector Base with X , Y and Z for int types.

Error Handleing

NameTypeDescription
Optional<T>Generic EnumContains a value or Null
Result<T,E>Generic EnumContains a Success or Error.

Memory

NameTypeDescription
Unique_ptr<T>Generic ClassA Type that Owns and manages another object on the heap.
Shared_ptr<T>Generic ClassA Type that Shares ownership another object on the heap.
LowLevelClassA Type That has LowLevel funcions like memcpy,memcpy,malloc.
Ptr<T>Generic ClassA Type that allows give C pointer semantics.
VoidPtrAliasA pointer that has no type with it.
Ptr<void>Class SpecializationA pointer that has no type with it.

Input/Output System

NameTypeDescription

Input/Output File

NameTypeDescription

Input/Output Networking

NameTypeDescription

Input/Output Serialization

NameTypeDescription

Miscellaneous

NameTypeDescription
EmptyclassA Zero-sized type.
Buffer_t<T>Generic traitGives the types that have continuous elements helper funcions such as Sort,Find and Filter.
StringBuffer_t<T>Generic traitGives the types that are strings funcions such as StartWith,EndWith and GetLines.
Range_t<T>Generic ClassRepresents a Range with to and from values
RangeFrom_t<T>Generic ClassRepresents a Range from a value
RangeTo_t<T>Generic ClassRepresents a Range a to value
RangeFullClassRepresents a Full Range
RangeInclusive_t<T>Generic ClassRepresents an Inclusive Range with a to and from a value
RangeToInclusive_t<T>Generic ClassRepresents an Inclusive Range to a value
Random_t<T>TraitRepresents an Random Function and State.
RandomaliasAn ailas to RandomXorshift32
RandomXorshift32ClassA Random Number Generator.

Notes

Under the hood the Standardlibrary uses NStandardlibrary API module to do operating system calls.