aboutsummaryrefslogtreecommitdiffstats
path: root/abstractmetabuilder.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added the "<custom-type>" tag, and better requirements for function signatures.sb-0.10.10Marcelo Lira2012-03-091-2/+19
| | | | | | | | | | | | | | | Trying to find a non-qualified (without scope information) class, found in a function signature or return type, was a bad idea for it makes the parsing awfully slow when dealing with huge libraries. If the user writes a type in short form in a function signature (e.g. "SomeClass", instead of "Namespace::SomeClass"), APIExtractor will exit with a message indicating the error and the possible candidates for the type. The "<custom-type>" tag is for types of the target language ("PyObject" in Python, for instance) and will be handled by the generator. Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Paulo Alcantara <pcacjr@gmail.com>
* Fixed typo on warning message.Marcelo Lira2012-03-091-1/+1
|
* Don't report cyclic dependency when there not a single to form a graph.Hugo Parente Lima2012-03-091-1/+1
| | | | Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>
* Fixes setting of template argument's usage pattern.Marcelo Lira2012-03-091-0/+1
| | | | | | | Comes with an unit test. Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
* Fixed modifications to global functions.sb-0.10.7Marcelo Lira2012-03-091-1/+9
| | | | | | | Also added unit test. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* Fixes method's argument types that are templates but the template variable ↵Marcelo Lira2012-03-091-73/+156
| | | | | | | | | | wasn't declared. An unit test was added. Other unrelated tests had minor improvements. Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
* AbstractMetaBuilder fixed to set base container type correctly in meta ↵Marcelo Lira2012-03-091-0/+3
| | | | class' type entry.
* Fix bug 731 - "Can't specify more than a single 'since' argument"Hugo Parente Lima2012-03-091-24/+0
|
* AbstractMetaClasses now hold the instantiation types for the templates they ↵Marcelo Lira2012-03-091-4/+1
| | | | | | | | | | | implement. AbstractMetaClasses that are typedefs for template class instantiations use to keep the template from where they derive, but didn't keep the values used for the derivation. Now this is fixed, and with an unit test. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* Copied AbstractMetaBuilder::decideUsagePattern() method to AbstractMetaType.Marcelo Lira2012-03-091-84/+1
| | | | | The decideUsagePattern on AbstractMetaBuilder now calls the new AbstractMetaType's method.
* Fix PySide code generation.sb-0.10.5Hugo Parente Lima2012-03-091-1/+2
|
* Check inconsistencies for enums and disable generation of private entities.Hugo Parente Lima2012-03-091-46/+65
| | | | | Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Renato Filho <renato.filho@openbossa.org>
* Fixed conversion operators type resolution for references to types.Marcelo Lira2012-03-091-0/+5
| | | | | | | | | This is fixes bug #716: http://bugs.pyside.org/show_bug.cgi?id=716 Unit tests were added as usual. Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
* Don't compute function modification from API versions greater than the ↵Hugo Parente Lima2012-03-091-0/+4
| | | | | | | current version. Reviewer: Lauro Moura <lauro.neto@openbossa.org> Marcelo Lira <marcelo.lira@openbossa.org>
* Add support to template types as arguments on user added functions.sb-0.10.2Hugo Parente Lima2012-03-091-2/+29
| | | | | Reviewer: Renato Araújo <renato.filho@openbossa.org> Marcelo Lira <marcelo.lira@openbossa.org>
* Add support for adding reverse operators with add-function tag.Hugo Parente Lima2012-03-091-16/+46
| | | | | Reviewer: Renato Araújo <renato.filho@openbossa.org> Luciano Wolf <luciano.wolf@openbossa.org>
* Remove GCC 4.6 warnings on abstractmetabuilder.cpp and parser.cppHugo Parente Lima2012-03-091-4/+0
| | | | | abstractmetabuilder.cpp:1792:9: warning: variable ‘firstDefaultArgument’ set but not used [-Wunused-but-set-variable] parser.cpp:2136:17: warning: variable ‘global_scope’ set but not used [-Wunused-but-set-variable]
* Fixed AbstractMetaType::cppSignature() method.Marcelo Lira2012-03-091-1/+6
| | | | | | | | | | The usage pattern *must* be decided *after* the possible template instantiations have been determined, or else the absence of such instantiations will break the caching scheme of AbstractMetaType::cppSignature(). Reviewed by Bruno Araújo <bruno.araujo@openbossa.org> Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
* Removed unused variable.Marcelo Lira2012-03-091-1/+0
|
* Moved down AbstractMetaType creation line to avoid possible memory leak.Marcelo Lira2012-03-091-1/+1
|
* Global functions can now be renamed.Marcelo Lira2012-03-091-0/+2
| | | | | | | | This is accomplished via the "rename" attribute on the "function" tag. An unit test was added and the documentation updated. Reviewed by Hugo Parente <hugo.lima@openbossa.org> Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
* Fixed polymorphic value for classes.sb-0.9.2Renato Araujo Oliveira Filho2012-03-091-0/+4
| | | | | | | Fixes bug #587. Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Hugo Parente Lima <hugo.pl@gmail.com>
* Add support to fix bug#493 - "__eq__ and friends not implemented for ↵Hugo Parente Lima2012-03-091-2/+6
| | | | | | | QKeyEvent == QKeySequence" Reviewer: Renato Araújo <renato.filho@openbossa.org> Lauro Moura <lauro.neto@openbossa.org>
* Discards class' fields removed in the type system binding description.Marcelo Lira2012-03-091-1/+1
|
* Implemented support to added functions for TypeAlias.sb-0.8.1renatofilho2012-03-091-0/+9
| | | | | Reviewer: Luciano Wolf <luciano.wolf@openbossa.org> Lauro Moura <lauro.neto@openbossa.org>
* Better qproperty function checkLauro Neto2012-03-091-5/+11
| | | | | | | | | | | | | | Now checking for the full specs: Getter: TYPE name(void) Setter: void name(TYPE) Resetter: void name(void) The previous behavior was crashing when there is a different overload with the same name of one of the property functions. Reviewer: Luciano Wolf <luciano.wolf@openbossa.org> Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>
* Change "or" to "||".Hugo Parente Lima2012-03-091-1/+1
|
* Add toStringCapability attribute to AbstractMetaClass.Hugo Parente Lima2012-03-091-4/+1
| | | | | | | | This capatility indicates that the given type has a QDebug::operator<< function, so it's only useful when using PySide extensions. Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Luciano Wolf <luciano.wolf@openbossa.org>
* Added a better support for resolution of enum value attribution.Marcelo Lira2012-03-091-6/+25
| | | | | | | Plus tests. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* Private enums are now accepted in the type system database.Marcelo Lira2012-03-091-8/+11
| | | | | This is done to allow enum value evaluation. Comes together with a nice test.
* Improved resolution of enum value attributions.Marcelo Lira2012-03-091-40/+37
| | | | | | | | In particular when an enum item is set to the value of an item from other enum. The code for this was moved to the method AbstractMetaBuilder::findOutValueFromString. Tests were added as well. s# ../tests/.testenum.h.swp
* Avoid check ifr include file exists during the generation.renatofilho2012-03-091-2/+1
| | | | | | | Fixes bug #382. Reviewer: Hugo Parente Lima <hugo.pl@gmail.com> Luciano Wolf <luciano.wolf@openbossa.org>
* Fixed AbstractMetaBuilder to handle enum values receiving boolean values.Marcelo Lira2012-03-091-17/+25
| | | | | | | | | | | | | | | | In other words, this enum { Positive = true, Negative = false }; is now properly recognized. Tests were added as usual. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* Fixes compiler warning on AbstractMetaBuilder.Marcelo Lira2012-03-091-1/+1
|
* Fixes segmentation fault caused by bad handling of global enums.Marcelo Lira2012-03-091-15/+15
| | | | | Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* Argument types that are arrays with specified sizes are correctly recognized.Marcelo Lira2012-03-091-3/+21
| | | | | | | | | | | The AbstractMetaBuilder::translateType method now tries to figure out properly the size of array argument types specified with enum items instead of literal numbers. Test cases were also added. Reviewed by Luciano Wolf <luciano.wolf@openbossa.org> Reviewed by Renato Araújo <renato.filho@openbossa.org>
* The AbstractMetaBuilder::figureOutEnumValues method now operates over global ↵Marcelo Lira2012-03-091-0/+10
| | | | enums.
* Anonymous enums now supported.Marcelo Lira2012-03-091-1/+15
|
* Created function to discovery when a class implement a container type.Renato Filho2012-03-091-0/+1
| | | | | Reviewer: Hugo Parente Lima <hugo.pl@gmail.com> Luciano Wolf <luciano.wolf@openbossa.org>
* Fixed error during the property functions parser.Renato Filho2012-03-091-1/+2
| | | | | | | Fixes bug #302 Reviewer: Hugo Parente Lima <hugo.pl@gmail.com> Luciano Wolf <luciano.wolf@openbossa.org>
* Fix wrong behaviour of topological sort.Luciano Wolf2012-03-091-2/+4
| | | | | | | | When dealing with repeated and unordered classes it can generate an invalid result array. Reviewer: Renato Araújo <renato.filho@openbossa.org> Marcelo Lira <marcelo.lira@openbossa.org>
* Fixed memory leak.Renato Filho2012-03-091-17/+40
| | | | | Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Luciano Wolf <luciano.wolf@openbossa.org>
* Fix bug#260 - "Can't modify argument name of a function added with ↵Hugo Parente Lima2012-03-091-2/+29
| | | | add-function tag."
* Namespaces must be traversed recursively as they should.Marcelo Lira2012-03-091-16/+56
|
* Guarantees that namespaces and inner classes will not be repeated.Marcelo Lira2012-03-091-2/+10
| | | | | Lists of global namespaces, inner classes and inner namespaces now have duplicated entries removed.
* Fixes usage of std::unique method.Marcelo Lira2012-03-091-0/+1
| | | | | std::unique looks for adjacent duplicates in a list, so it needs to be sorted for the algorithm to work in all items.
* Class members are traversed after the classes themselves.Marcelo Lira2012-03-091-4/+33
| | | | | | To prevent a method that uses a type that was not ready at the moment of analysis, the classes are traversed separately and before the class members, namely fields and methods.
* Type translation now looks in the class' parent scope.Marcelo Lira2012-03-091-4/+20
| | | | | When trying to figure out a type the AbstractMetaBuilder::translateType method should also look in the class' parent scope.
* Fixed namespace resolution name.Renato Filho2012-03-091-1/+14
| | | | | Reviewer: Luciano Wolf <luciano.wolf@openbossa.org>, Marcelo Lira <marcelo.lira@openbossa.org>
* Fix trivial spelling errors.Renato Filho2012-03-091-1/+1
| | | | | | | Author: Didier Raboud <didier@raboud.com> Reviewer: Luciano Wolf <luciano.wolf@openbossa.org>, Marcelo Lira <marcelo.lira@openbossa.org>