Rosetta
|
#include <function.hpp>
Public Member Functions | |
FunctionBinder (clang::FunctionDecl const *f) | |
string | id () const override |
Generate string id that uniquly identify C++ binding object. For functions this is function prototype and for classes forward declaration. More... | |
clang::NamedDecl const * | named_decl () const override |
return Clang AST NamedDecl pointer to original declaration used to create this Binder More... | |
bool | bindable () const override |
check if generator can create binding More... | |
void | request_bindings_and_skipping (Config const &) override |
check if user requested binding for the given declaration More... | |
void | add_relevant_includes (IncludeSet &includes) const override |
extract include needed for this generator and add it to includes vector More... | |
void | bind (Context &) override |
generate binding code for this object and all its dependencies More... | |
![]() | |
virtual | ~Binder () |
bool | binding_requested () const |
bool | skipping_requested () const |
void | request_bindings () |
request bindings for this generator More... | |
void | request_skipping () |
request skipping for this generator More... | |
bool | is_binded () const |
return true if code was already generated for this object More... | |
string & | code () |
return binding code More... | |
string const & | code () const |
bool | is_in_system_header () |
return true if object is declared in system header More... | |
virtual std::vector< clang::CXXRecordDecl const * > | dependencies () const |
return vector of declarations that need to be binded before this one could More... | |
virtual string | prefix_code () const |
return prefix portion of bindings code More... | |
operator std::string () const | |
return unique strting ID for this binder More... | |
Private Attributes | |
clang::FunctionDecl const * | F |
Additional Inherited Members | |
![]() | |
typedef std::string | string |
|
inline |
|
overridevirtual |
extract include needed for this generator and add it to includes vector
Implements binder::Binder.
References binder::add_relevant_includes(), and ObjexxFCL::format::F().
|
overridevirtual |
generate binding code for this object and all its dependencies
Implements binder::Binder.
References binder::bind_function(), ObjexxFCL::format::F(), binder::function_arguments(), binder::line_number(), binder::Context::module_variable_name(), binder::namespace_from_named_decl(), and binder::relevant_include().
|
overridevirtual |
check if generator can create binding
Implements binder::Binder.
References ObjexxFCL::format::F(), and binder::is_bindable().
|
overridevirtual |
Generate string id that uniquly identify C++ binding object. For functions this is function prototype and for classes forward declaration.
Implements binder::Binder.
References ObjexxFCL::format::F(), and binder::function_qualified_name().
Referenced by schema.Job::__repr__().
|
inlineoverridevirtual |
return Clang AST NamedDecl pointer to original declaration used to create this Binder
Implements binder::Binder.
References F.
|
overridevirtual |
check if user requested binding for the given declaration
Implements binder::Binder.
References ObjexxFCL::format::F(), binder::is_binding_requested(), binder::is_skipping_requested(), and binder::request_bindings().
|
private |
Referenced by named_decl().