29 Sep 2010 18:00:56 UTC
- Development release
- Distribution: KinoSearch
- Source (raw)
- Browse (raw)
- How to Contribute
- Issues (5)
- Testers (122 / 14 / 1)
- KwaliteeBus factor: 0
- License: perl_5
- Activity24 month
- Download (841.91KB)
- MetaCPAN Explorer
- Subscribe to distribution
- This version
- Latest versionCREAMYG Marvin Humphreyand 1 contributors
- Marvin Humphrey <marvin at rectangular dot com>
- COPYRIGHT AND LICENSE
Clownfish::Binding::Core::Class - Generate core C code for a class.
Clownfish::Class is an abstract specification for a class. This module autogenerates the C code with implements that specification.
my $class_binding = Clownfish::Binding::Core::Class->new( client => $class, );
client - A Clownfish::Class.
Forwards to the client's methods of the same name.
# /path/to/Foo/Bar.c, if source class is Foo::Bar. my $path = $class->file_path( '/path/to', '.c' );
Provide an OS-specific path where a file relating to this class could be found, by joining together the components of the "source class" name.
print q|#include "| . $class->include_h . q|"|;
Return a relative path to a C header file, appropriately formatted for a pound-include directive.
Return the name of the global VTable object for this class.
Return the C type specifier for this class's vtable. Each vtable needs to have its own type because each has a variable number of methods at the end of the struct, and it's not possible to initialize a static struct with a flexible array at the end under C89.
Return C code defining the class's VTable.
Create the definition for the instantiable object struct.
Return the name of the global Callbacks list for this class.
The name of the global class name var for this class.
C code defining the ZombieCharBuf which contains the class name for this class.
Return the .h file which contains autogenerated C code defining the class's interface: all method invocation functions, etc...
Return the .c file which contains autogenerated C code necessary for the class to function properly.
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.