Class: FFI::StructLayout::Array
Instance Method Summary collapse
Methods inherited from Field
#alignment, #ffi_type, #initialize, #name, #offset, #put, #size
Constructor Details
This class inherits a constructor from FFI::StructLayout::Field
Instance Method Details
#get(pointer) ⇒ Object
233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 |
# File 'ext/ffi_c/StructLayout.c', line 233 static VALUE array_field_get(VALUE self, VALUE pointer) { StructField* f; ArrayType* array; MemoryOp* op; AbstractMemory* memory = MEMORY(pointer); VALUE argv[2]; Data_Get_Struct(self, StructField, f); Data_Get_Struct(f->rbType, ArrayType, array); op = memory_get_op(memory, array->componentType); if (op == NULL) { rb_raise(rb_eArgError, "get not supported for %s", rb_obj_classname(array->rbComponentType)); return Qnil; } argv[0] = pointer; argv[1] = self; return rb_class_new_instance(2, argv, rbffi_StructInlineArrayClass); } |