Clownfish::Type::Arbitrary - An arbitrary type.
The "arbitrary" type class is a hack that spares us from having to support C types with complex declaration syntaxes -- such as unions, structs, enums, or function pointers -- from within Clownfish itself.
The only constraint is that the specifier must end in "_t". This allows us to create complex types in a C header file...
specifier
typedef union { float f; int i; } floatint_t;
... pound-include the C header, then use the resulting typedef in a Clownfish header file and have it parse as an "arbitrary" type.
floatint_t floatint;
my $type = Clownfish::Type->new( specifier => 'floatint_t', # required parcel => 'Crustacean', # default: undef );
specifier - The name of the type, which must end in "_t".
parcel - A Clownfish::Parcel or a parcel name.
If parcel is supplied and specifier begins with a capital letter, the Parcel's prefix will be prepended to the specifier:
parcel
foo_t -> foo_t # no prefix prepending Lobster_foo_t -> crust_Lobster_foo_t # prefix prepended
Copyright 2008-2010 Marvin Humphrey
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install KSx::Simple, copy and paste the appropriate command in to your terminal.
cpanm
cpanm KSx::Simple
CPAN shell
perl -MCPAN -e shell install KSx::Simple
For more information on module installation, please visit the detailed CPAN module installation guide.