FFI::cast

Performs a C type cast

&reftitle.description; public static ``FFI\CData``null```FFI::cast` ``FFI\CType``string```type` ``FFI\CData``int``float``bool``null```ptr` public ``FFI\CData``null```FFI::cast` ``FFI\CType``string```type` ``FFI\CData``int``float``bool``null```ptr`

`FFI::cast` creates a new `FFI\CData` object, that references the same C data structure, but is associated with a different type. The resulting object does not own the C data, and the source `ptr` must survive the result. The C type may be specified as a `string` with any valid C type declaration or as `FFI\CType` object, created before. If this method is called statically, it must only use predefined C type names (e.g. `int`, `char`, etc.); if the method is called as instance method, any type declared for the instance is allowed.

&reftitle.parameters;

`type`

- A valid C declaration as `string`, or an instance of `FFI\CType` which has already been created.

`ptr`

- The handle of the pointer to a C data structure.

&reftitle.returnvalues;

Returns the freshly created `FFI\CData` object.