#include <typesolver.hh>
Classes | |
| struct | NestedTypeDefinition |
| struct | UnsupportedClassType |
Public Member Functions | |
| virtual void | beginClassDefinition (TypeSpecifier class_type, const std::string &name) |
| virtual void | beginEnumDefinition (const std::string &name) |
| virtual void | beginFieldDeclaration () |
| virtual void | beginTypedef () |
| virtual void | classForwardDeclaration (TypeSpecifier ts, DeclSpecifier, const std::string &name) |
| virtual void | declaratorArray (int size) |
| virtual void | declaratorID (const std::string &name, QualifiedItem) |
| void | defineOpaqueAlignment (std::string const &type_name, size_t value) |
| virtual void | end_of_stmt () |
| virtual void | endClassDefinition () |
| virtual void | endEnumDefinition () |
| virtual void | endFieldDeclaration () |
| virtual void | enterNamespace (std::string const &name) |
| virtual void | enumElement (const std::string &name, bool has_value, int value) |
| virtual void | exitNamespace () |
| virtual void | foundSimpleType (const std::list< std::string > &full_type) |
| virtual int | getIntConstant (std::string const &name) |
| virtual int | getStackSize () const |
| virtual int | getTypeSize (CurrentTypeDefinition const &def) |
| virtual void | incrementPointerLevel () |
| virtual CurrentTypeDefinition | popType () |
| virtual CurrentTypeDefinition & | pushNewType () |
| virtual void | resetPointerLevel () |
| void | setTemplateArguments (int count) |
| void | setupOpaqueHandling (bool forced_alignment, bool ignore) |
| TypeSolver (antlr::TokenStream &lexer, Typelib::Registry ®istry, bool cxx_mode) | |
| TypeSolver (const antlr::ParserSharedInputState &state, Typelib::Registry ®istry, bool cxx_mode) | |
Private Types | |
| typedef std::map< std::string, size_t > | AlignmentMap |
Private Member Functions | |
| void | beginTypeDefinition (TypeSpecifier class_type, const std::string &name) |
| Typelib::Type & | buildClassObject () |
| Typelib::Type const & | buildCurrentType () |
| void | setTypename (std::string const &name) |
Private Attributes | |
| Typelib::Type * | m_class_object |
| TypeSpecifier | m_class_type |
| std::map< std::string, int > | m_constants |
| std::list< CurrentTypeDefinition > | m_current |
| bool | m_cxx_mode |
| utilmm::stringlist | m_namespace |
| AlignmentMap | m_opaques_alignment |
| bool | m_opaques_forced_alignment |
| bool | m_opaques_ignore |
| Typelib::Registry & | m_registry |
Definition at line 14 of file typesolver.hh.
typedef std::map<std::string, size_t> TypeSolver::AlignmentMap [private] |
Definition at line 31 of file typesolver.hh.
| TypeSolver::TypeSolver | ( | antlr::TokenStream & | lexer, |
| Typelib::Registry & | registry, | ||
| bool | cxx_mode | ||
| ) |
Definition at line 27 of file typesolver.cc.
| TypeSolver::TypeSolver | ( | const antlr::ParserSharedInputState & | state, |
| Typelib::Registry & | registry, | ||
| bool | cxx_mode | ||
| ) |
Definition at line 23 of file typesolver.cc.
| void TypeSolver::beginClassDefinition | ( | TypeSpecifier | class_type, |
| const std::string & | name | ||
| ) | [virtual] |
Definition at line 80 of file typesolver.cc.
| void TypeSolver::beginEnumDefinition | ( | const std::string & | name | ) | [virtual] |
Definition at line 106 of file typesolver.cc.
| void TypeSolver::beginFieldDeclaration | ( | ) | [virtual] |
Definition at line 196 of file typesolver.cc.
| void TypeSolver::beginTypedef | ( | ) | [virtual] |
Definition at line 144 of file typesolver.cc.
| void TypeSolver::beginTypeDefinition | ( | TypeSpecifier | class_type, |
| const std::string & | name | ||
| ) | [private] |
Definition at line 65 of file typesolver.cc.
| Type & TypeSolver::buildClassObject | ( | ) | [private] |
Definition at line 169 of file typesolver.cc.
| Typelib::Type const & TypeSolver::buildCurrentType | ( | ) | [private] |
Definition at line 242 of file typesolver.cc.
| void TypeSolver::classForwardDeclaration | ( | TypeSpecifier | ts, |
| DeclSpecifier | ds, | ||
| const std::string & | name | ||
| ) | [virtual] |
Definition at line 215 of file typesolver.cc.
| void TypeSolver::declaratorArray | ( | int | size | ) | [virtual] |
Definition at line 419 of file typesolver.cc.
| void TypeSolver::declaratorID | ( | const std::string & | name, |
| QualifiedItem | qi | ||
| ) | [virtual] |
Definition at line 323 of file typesolver.cc.
| void TypeSolver::defineOpaqueAlignment | ( | std::string const & | type_name, |
| size_t | value | ||
| ) |
Definition at line 36 of file typesolver.cc.
| void TypeSolver::end_of_stmt | ( | ) | [virtual] |
Definition at line 427 of file typesolver.cc.
| void TypeSolver::endClassDefinition | ( | ) | [virtual] |
Definition at line 86 of file typesolver.cc.
| void TypeSolver::endEnumDefinition | ( | ) | [virtual] |
Definition at line 133 of file typesolver.cc.
| void TypeSolver::endFieldDeclaration | ( | ) | [virtual] |
Definition at line 201 of file typesolver.cc.
| void TypeSolver::enterNamespace | ( | std::string const & | name | ) | [virtual] |
Definition at line 94 of file typesolver.cc.
| void TypeSolver::enumElement | ( | const std::string & | name, |
| bool | has_value, | ||
| int | value | ||
| ) | [virtual] |
Definition at line 119 of file typesolver.cc.
| void TypeSolver::exitNamespace | ( | ) | [virtual] |
Definition at line 100 of file typesolver.cc.
| void TypeSolver::foundSimpleType | ( | const std::list< std::string > & | full_type | ) | [virtual] |
Definition at line 205 of file typesolver.cc.
| int TypeSolver::getIntConstant | ( | std::string const & | name | ) | [virtual] |
Definition at line 150 of file typesolver.cc.
| int TypeSolver::getStackSize | ( | ) | const [virtual] |
Definition at line 321 of file typesolver.cc.
| int TypeSolver::getTypeSize | ( | CurrentTypeDefinition const & | def | ) | [virtual] |
Definition at line 159 of file typesolver.cc.
| void TypeSolver::incrementPointerLevel | ( | ) | [virtual] |
Definition at line 301 of file typesolver.cc.
| TypeSolver::CurrentTypeDefinition TypeSolver::popType | ( | ) | [virtual] |
Definition at line 307 of file typesolver.cc.
| TypeSolver::CurrentTypeDefinition & TypeSolver::pushNewType | ( | ) | [virtual] |
Definition at line 316 of file typesolver.cc.
| void TypeSolver::resetPointerLevel | ( | ) | [virtual] |
Definition at line 295 of file typesolver.cc.
| void TypeSolver::setTemplateArguments | ( | int | count | ) |
Definition at line 434 of file typesolver.cc.
| void TypeSolver::setTypename | ( | std::string const & | name | ) | [private] |
Definition at line 42 of file typesolver.cc.
| void TypeSolver::setupOpaqueHandling | ( | bool | forced_alignment, |
| bool | ignore | ||
| ) |
Definition at line 31 of file typesolver.cc.
Typelib::Type* TypeSolver::m_class_object [private] |
Definition at line 16 of file typesolver.hh.
TypeSpecifier TypeSolver::m_class_type [private] |
Definition at line 17 of file typesolver.hh.
std::map<std::string, int> TypeSolver::m_constants [private] |
Definition at line 23 of file typesolver.hh.
std::list<CurrentTypeDefinition> TypeSolver::m_current [private] |
Definition at line 21 of file typesolver.hh.
bool TypeSolver::m_cxx_mode [private] |
Definition at line 28 of file typesolver.hh.
utilmm::stringlist TypeSolver::m_namespace [private] |
Definition at line 19 of file typesolver.hh.
AlignmentMap TypeSolver::m_opaques_alignment [private] |
Definition at line 32 of file typesolver.hh.
bool TypeSolver::m_opaques_forced_alignment [private] |
Definition at line 29 of file typesolver.hh.
bool TypeSolver::m_opaques_ignore [private] |
Definition at line 30 of file typesolver.hh.
Typelib::Registry& TypeSolver::m_registry [private] |
Definition at line 26 of file typesolver.hh.