Blame templates/c_api_h.temp

Packit 3f72c8
/*
Packit 3f72c8
 * <% $c_api_h_filename %> - This file is in the public domain
Packit 3f72c8
 * Author: <% $author %>
Packit 3f72c8
 *
Packit 3f72c8
 * Generated on: <% $now %>
Packit 3f72c8
 * <% $module_name %> version: <% $module_version %>
Packit 3f72c8
 * Module::CAPIMaker version: <% $module_capimaker_version %>
Packit 3f72c8
 */
Packit 3f72c8
Packit 3f72c8
#if !defined (<% $c_api_h_barrier %>)
Packit 3f72c8
#define <% $c_api_h_barrier %>
Packit 3f72c8
Packit 3f72c8
static void
Packit 3f72c8
init_c_api(pTHX) {
Packit 3f72c8
    HV *hv = get_hv("<% $module_name %>::C_API", TRUE|GV_ADDMULTI);
Packit 3f72c8
    hv_store(hv, "min_version", <% length("min_version") %>, newSViv(<% $min_version %>), 0);
Packit 3f72c8
    hv_store(hv, "max_version", <% length("max_version") %>, newSViv(<% $max_version %>), 0);
Packit 3f72c8
    hv_store(hv, "version", <% length("version") %>, newSViv(<% $max_version %>), 0);
Packit 3f72c8
<%
Packit 3f72c8
    for my $n (sort keys %function) {
Packit 3f72c8
        my $f = $function{$n};
Packit 3f72c8
        my $len = length $n;
Packit 3f72c8
        $OUT .= "    hv_store(hv, \"$n\", $len, newSViv(PTR2IV(&$n)), 0);\n";
Packit 3f72c8
    }
Packit 3f72c8
%>
Packit 3f72c8
}
Packit 3f72c8
Packit 3f72c8
#define INIT_C_API init_c_api(aTHX)
Packit 3f72c8
Packit 3f72c8
#endif