GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
ExtUtils::XSpp::Node::Function(3) User Contributed Perl Documentation ExtUtils::XSpp::Node::Function(3)

ExtUtils::XSpp::Node::Function - Node representing a function

An ExtUtils::XSpp::Node subclass representing a single function declaration such as

  int foo();

More importantly, ExtUtils::XSpp::Node::Method inherits from this class, so all in here equally applies to method nodes.

Creates a new "ExtUtils::XSpp::Node::Function".

Named parameters: "cpp_name" indicating the C++ name of the function, "perl_name" indicating the Perl name of the function (defaults to the same as "cpp_name"), "arguments" can be a reference to an array of "ExtUtils::XSpp::Node::Argument" objects and finally "ret_type" indicates the (C++) return type of the function.

Additionally, there are several optional decorators for a function declaration (see ExtUtils::XSpp for a list). These can be passed to the constructor as "code", "cleanup", "postcall", and "catch". "catch" is special in that it must be a reference to an array of class names.

Fetches the ExtUtils::XSpp::Typemap object for the return type and the arguments from the typemap registry and stores a reference to those objects.

Fetches the ExtUtils::XSpp::Exception object for the %catch directives associated with this function.

Adds a list of exception names to the list of exception handlers. This is mainly called by a class' "add_methods" method. If the function is hard-wired to have no exception handlers, any extra handlers from the class are ignored.
Returns a string with a C++ method declaration for the node.

Returns the name of the Perl function to generate.

Returns whether the object at hand is a method. Hard-wired to be false for "ExtUtils::XSpp::Node::Function" object, but overridden in the ExtUtils::XSpp::Node::Method sub-class.

Returns true if the function has any argument that uses the XS length feature.

Returns the C++ name of the function.

Returns the Perl name of the function (defaults to same as C++).

Sets the Perl name of the function.

Returns the internal array reference of ExtUtils::XSpp::Node::Argument objects that represent the function arguments.

Returns the C++ return type.

Returns the %code decorator if any.

Sets the implementation for the method call (equivalent to using %code); takes the code as an array reference containing the lines.

Returns the %cleanup decorator if any.

Returns the %postcall decorator if any.

Returns the set of exception types that were associated with the function via %catch. (array reference)

Returns a hashref of "name => position" function name aliases (see %alias and perlxs ALIAS keyword). Does not include the main function name.

Sets the "static"-ness attribute of the function. Can be either undef (i.e. not static), "package_static", or "class_static".

Returns whether the function is package static. A package static function can be invoked as:

    My::Package::Function( ... );

Returns whether the function is class static. A class static function can be invoked as:

    My::Package->Function( ... );

Returns the typemap for the return value of the function.

Sets the typemap for the return value of the function.

Returns the typemap for one function arguments.

Sets the typemap for one function argument.
2022-04-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.