Rosetta  3.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Functions
binder.cpp File Reference

Main. More...

#include <binder.hpp>
#include "clang/Frontend/FrontendActions.h"
#include "clang/Tooling/CommonOptionsParser.h"
#include "clang/Tooling/Tooling.h"
#include <clang/AST/RecursiveASTVisitor.h>
#include <clang/Basic/SourceLocation.h>
#include <clang/Frontend/CompilerInstance.h>
#include <clang/AST/Comment.h>
#include "llvm/Support/CommandLine.h"
#include <context.hpp>
#include <enum.hpp>
#include <function.hpp>
#include <class.hpp>
#include <util.hpp>

Classes

class  ClassVisitor
 
class  BinderVisitor
 
class  BinderASTConsumer
 
class  BinderFrontendAction
 

Functions

static llvm::cl::OptionCategory BinderToolCategory ("Binder options")
 
static cl::extrahelp CommonHelp (CommonOptionsParser::HelpMessage)
 
static cl::extrahelp MoreHelp ("\nMore help text...\n")
 
cl::opt< std::string > O_root_module ("root-module", cl::desc("Name of root module"), cl::cat(BinderToolCategory))
 
cl::opt< intO_max_file_size ("max-file-size", cl::desc("Specify maximum length of generated source files"), cl::init(1024 *16), cl::cat(BinderToolCategory))
 
cl::opt< std::string > O_prefix ("prefix", cl::desc("Output prefix for all generated files. Might contain directories."), cl::init(""), cl::cat(BinderToolCategory))
 
cl::list< std::string > O_bind ("bind", cl::desc("Namespace to bind, could be specified more then once. Specify \"\" to bind all namespaces."), cl::cat(BinderToolCategory))
 
cl::list< std::string > O_skip ("skip", cl::desc("Namespace to skip, could be specified more then once"), cl::cat(BinderToolCategory))
 
cl::opt< std::string > O_config ("config", cl::desc("Specify config file from which bindings setting will be read"), cl::init(""), cl::cat(BinderToolCategory))
 
cl::opt< boolO_annotate_includes ("annotate-includes", cl::desc("Annotate each includes in generated code with type name that trigger it inclusion"), cl::init(false), cl::cat(BinderToolCategory))
 
cl::opt< boolO_single_file ("single-file", cl::desc("Concatenate all binder output into single file with name: root-module-name + '.cpp'. Use this for a small projects and for testing."), cl::init(false), cl::cat(BinderToolCategory))
 
string wrap_CXXRecordDecl (CXXRecordDecl *R)
 
int main (int argc, const char **argv)
 

Detailed Description

Main.

Author
Sergey Lyskov

Function Documentation

static llvm::cl::OptionCategory BinderToolCategory ( "Binder options )
static

Referenced by main().

static cl::extrahelp CommonHelp ( CommonOptionsParser::HelpMessage  )
static
int main ( int  argc,
const char **  argv 
)

References BinderToolCategory().

static cl::extrahelp MoreHelp ( "\nMore help text...\n"  )
static
cl::opt<bool> O_annotate_includes ( "annotate-includes"  ,
cl::  desc"Annotate each includes in generated code with type name that trigger it inclusion",
cl::  initfalse,
cl::  catBinderToolCategory 
)
cl::list<std::string> O_bind ( "bind"  ,
cl::  desc"Namespace to bind, could be specified more then once. Specify \"\" to bind all namespaces.",
cl::  catBinderToolCategory 
)
cl::opt<std::string> O_config ( "config"  ,
cl::  desc"Specify config file from which bindings setting will be read",
cl::  init"",
cl::  catBinderToolCategory 
)
cl::opt<int> O_max_file_size ( "max-file-size"  ,
cl::  desc"Specify maximum length of generated source files",
cl::  init1024 *16,
cl::  catBinderToolCategory 
)
cl::opt<std::string> O_prefix ( "prefix"  ,
cl::  desc"Output prefix for all generated files. Might contain directories.",
cl::  init"",
cl::  catBinderToolCategory 
)
cl::opt<std::string> O_root_module ( "root-module"  ,
cl::  desc"Name of root module",
cl::  catBinderToolCategory 
)
cl::opt<bool> O_single_file ( "single-file"  ,
cl::  desc"Concatenate all binder output into single file with name: root-module-name + '.cpp'. Use this for a small projects and for testing.",
cl::  initfalse,
cl::  catBinderToolCategory 
)
cl::list<std::string> O_skip ( "skip"  ,
cl::  desc"Namespace to skip, could be specified more then once",
cl::  catBinderToolCategory 
)
string wrap_CXXRecordDecl ( CXXRecordDecl *  R)