v8toolkit
0.0.1
Utility library for embedding V8 Javascript engine in a c++ program
|
#include <class_handler.h>
Public Member Functions | |
virtual void | run (const ast_matchers::MatchFinder::MatchResult &Result) override |
ClassHandler (CompilerInstance &CI) | |
virtual void | onEndOfTranslationUnit () override |
std::string | handle_data_member (WrappedClass &containing_class, FieldDecl *field, const std::string &indentation) |
void | handle_class (WrappedClass &wrapped_class, bool top_level=true, const std::string &indentation="") |
Public Attributes | |
CompilerInstance & | ci |
Definition at line 10 of file class_handler.h.
|
inline |
Definition at line 27 of file class_handler.h.
References handle_class(), handle_data_member(), and onEndOfTranslationUnit().
|
overridevirtual |
This runs per-match from MyASTConsumer, but always on the same ClassHandler (this) object
Definition at line 6 of file class_handler.cpp.
References WrappedClass::annotations, Annotations::annotations_for_class_templates, Annotations::annotations_for_record_decls, ci, WrappedClass::class_name, WrappedClass::decl, WrappedClass::derived_types, WrappedClass::force_no_constructors, FOUND_BASE_CLASS, FOUND_INHERITANCE, WrappedClass::found_method, FOUND_UNSPECIFIED, get_canonical_name_for_decl(), WrappedClass::get_if_exists(), get_include_string_for_fileid(), ClassTemplate::get_or_create(), FunctionTemplate::get_or_create(), WrappedClass::get_or_insert_wrapped_class(), Annotations::get_regex(), WrappedClass::get_short_name(), handle_class(), Annotations::has(), WrappedClass::has_static_method(), WrappedClass::include_files, WrappedClass::insert_wrapped_class(), ClassTemplate::instantiated(), FunctionTemplate::instantiated(), is_good_record_decl(), matched_classes_returned, WrappedClass::name_alias, Annotations::names_for_record_decls, print_logging, print_specialization_info(), V8TOOLKIT_BIDIRECTIONAL_CLASS_STRING, V8TOOLKIT_DO_NOT_WRAP_CONSTRUCTORS_STRING, V8TOOLKIT_EXPOSE_STATIC_METHODS_AS_PREFIX, V8TOOLKIT_NAME_ALIAS_STRING, and V8TOOLKIT_NONE_STRING.
|
overridevirtual |
Definition at line 376 of file class_handler.cpp.
References ci, WrappedClass::class_name, data_error(), data_errors, data_warnings, EXPORT_ALL, EXPORT_EXCEPT, generate_bidirectional_classes(), generate_bindings(), generate_javascript_stub(), get_export_type(), get_type_string(), handle_data_member(), WrappedClass::name_alias, PRINT_SKIPPED_EXPORT_REASONS, and update_wrapped_class_for_type().
Referenced by ClassHandler().
std::string ClassHandler::handle_data_member | ( | WrappedClass & | containing_class, |
FieldDecl * | field, | ||
const std::string & | indentation | ||
) |
Referenced by ClassHandler(), and onEndOfTranslationUnit().
void ClassHandler::handle_class | ( | WrappedClass & | wrapped_class, |
bool | top_level = true , |
||
const std::string & | indentation = "" |
||
) |
CompilerInstance& ClassHandler::ci |
Definition at line 19 of file class_handler.h.
Referenced by onEndOfTranslationUnit(), and run().