The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Clownfish::Binding::Core::File - Generate core C code for a Clownfish file.

DESCRIPTION

This module is the companion to Clownfish::File, generating the C code needed to implement the file's specification.

There is a one-to-one mapping between Clownfish header files and autogenerated .h and .c files. If Foo.cfh includes both Foo and Foo::FooJr, then it is necessary to pound-include "Foo.h" in order to get FooJr's interface -- not "Foo/FooJr.h", which won't exist.

CLASS METHODS

write_h

    Clownfish::Binding::Core::File->write_c(
        file   => $file,                            # required
        dest   => '/path/to/autogen_dir',           # required
        header => "/* Autogenerated file. */\n",    # required
        footer => $copyfoot,                        # required
    );

Generate a C header file containing all class declarations and literal C blocks.

  • file - A Clownfish::File.

  • dest - The directory under which autogenerated files are being written.

  • header - Text which will be prepended to each generated C file -- typically, an "autogenerated file" warning.

  • footer - Text to be appended to the end of each generated C file -- typically copyright information.

write_h

    Clownfish::Binding::Core::File->write_c(
        file   => $file,                            # required
        dest   => '/path/to/autogen_dir',           # required
        header => "/* Autogenerated file. */\n",    # required
        footer => $copyfoot,                        # required
    );

Generate a C file containing code needed by the class implementations.

COPYRIGHT AND LICENSE

Copyright 2008-2011 Marvin Humphrey

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.