Provided by: libffi-c-perl_0.15-2_all
NAME
FFI::C::Struct - Structured data instance for FFI
VERSION
version 0.15
SYNOPSIS
use FFI::C::StructDef; my $def = FFI::C::StructDef->new( name => 'color_t', class => 'Color', members => [ red => 'uint8', green => 'uint8', blue => 'uint8', ], ); my $red = $def->create({ red => 255 }); # creates a FFI::C::Stuct printf "[%02x %02x %02x]\n", $red->red, $red->green, $red->blue; # [ff 00 00] # that red is too bright! $red->red(200); printf "[%02x %02x %02x]\n", $red->red, $red->green, $red->blue; # [c8 00 00] my $green = Color->new({ green => 255 }); # creates a FFI::C::Stuct printf "[%02x %02x %02x]\n", $green->red, $green->green, $green->blue; # [00 ff 00]
DESCRIPTION
This class represents an instance of a C "struct". This class can be created using "new" on the generated class, if that was specified for the FFI::C::StructDef, or by using the "create" method on FFI::C::StructDef. For each member defined in the FFI::C::StructDef there is an accessor for the FFI::C::Struct instance.
CONSTRUCTOR
new FFI::C::StructDef->new( class => 'User::Struct::Class', ... ); my $instance = User::Struct::Class->new; Creates a new instance of the "struct".
SEE ALSO
FFI::C FFI::C::Array FFI::C::ArrayDef FFI::C::Def FFI::C::File FFI::C::PosixFile FFI::C::Struct FFI::C::StructDef FFI::C::Union FFI::C::UnionDef FFI::C::Util FFI::Platypus::Record
AUTHOR
Graham Ollis <plicease@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2020-2022 by Graham Ollis. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.