NativeStructAlloc<C extends Struct, D extends StructD<C, D>> constructor

NativeStructAlloc<C extends Struct, D extends StructD<C, D>>(
  1. RaylibTemp temp,
  2. String name, {
  3. required int byteSize,
  4. required Pointer<C> allocatorFunc([
    1. int count
    ]),
  5. required String printerFunc(
    1. Pointer<C> ptr
    ),
  6. required C refFunc(
    1. Pointer<C> ptr
    ),
  7. required Pointer<C> setRefFunc(
    1. Pointer<C> ptr,
    2. C value
    ),
  8. required void setCFunc(
    1. Pointer<C> ptr,
    2. int i,
    3. C value
    ),
  9. required C indexerFunc(
    1. Pointer<C> ptr,
    2. int i
    ),
  10. required void indexSetterFunc(
    1. Pointer<C> ptr,
    2. int i,
    3. C value
    ),
  11. required D pointerToStruct(
    1. Pointer<C> ptr
    ),
  12. required void updateFunc(
    1. Pointer<C> ptr,
    2. D source
    ),
})

Implementation

NativeStructAlloc(super.temp, super.name, {
  required super.byteSize,
  required super.allocatorFunc,
  required super.printerFunc,
  required this.refFunc,
  required this.setRefFunc,
  required this.setCFunc,
  required this.indexerFunc,
  required this.indexSetterFunc,
  required this.pointerToStruct,
  required this.updateFunc,
}) {
  writeIntoIndexedFunc = (ptr, i, v) => v.nativeWriteInto(indexerFunc(ptr, i));
  writeIntoFunc = (ptr, v) => v.nativeWriteInto(refFunc(ptr));
}