FFI::C::Union - Union data instance for FFI
version 0.15
use FFI::C::UnionDef; my $def = FFI::C::UnionDef->new( name => 'anyint_t', class => 'AnyInt', members => [ u8 => 'uint8', u16 => 'uint16', u32 => 'uint32', ], ); my $int = AnyInt->new({ u8 => 42 }); printf "0x%x\n", $int->u32; # 0x2a on Intel
This class represents an instance of a C union
. This class can be created using new
on the generated class, if that was specified for the FFI::C::UnionDef, or by using the create
method on FFI::C::UnionDef.
For each member defined in the FFI::C::UnionDef there is an accessor for the FFI::C::Union instance.
FFI::C::UnionDef->new( class => 'User::Union::Class', ... ); my $instance = User::Union::Class->new;
Creates a new instance of the union
.
Graham Ollis <plicease@cpan.org>
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.