namespace sys.core
class DynamicBlock
this{a: PtrSize};
this{copy: DynamicBlock};
this{move copy: DynamicBlock};
a=>
copy=>
this @allocate{len: PtrSize, capacity: PtrSize};
len=>
capacity=>
def @attr(copy: DynamicBlock);
def @attr(move copy: DynamicBlock);
copy=>
def ExpandTo(value: PtrSize);
def ExpandTo(newLength: PtrSize, init: T);
value=>
newLength=>
init=>
def ExpandBy(delta: PtrSize);
def ExpandBy(delta: PtrSize, init: T);
delta=>
init=>
def ShrinkTo(newLength: PtrSize);
newLength=>
def ShrinkBy(delta: PtrSize);
delta=>
def Fill(value: T);
value=>
def Clear();
def Append(item: T);
def Append(item: T, count: PtrSize);
item=>
count=>
def SetLengthUnsafe(value: PtrSize);
value=>
def ExpandUnsafe(value: PtrSize);
value=>
def ShrinkUnsafe(value: PtrSize);
value=>
def FreeUnsafe(len: PtrSize);
len=>
property @index: ref T; get;
property Length: PtrSize
property IsEmpty: Bool; get;
property Capacity: PtrSize
property SysDataPointer: Ptr; get;