Fix sipify constructor detection

This commit is contained in:
Matthias Kuhn 2017-04-02 10:54:04 +02:00
parent 6681766cbb
commit 68d8108ab3
3 changed files with 25 additions and 4 deletions

View File

@ -253,7 +253,7 @@ while(!eof $header){
$line =~ s/\s*=\s*default\b//g;
# remove constructor definition
if ( $line =~ m/^(\s*)?(explicit )?(\w+)\(([^()]*\([^()]*\)[^()]*)*\)(?!;)$/ ){
if ( $line =~ m/^(\s*)?(explicit )?(\w+)\([\w\=\(\)\s\,\&\*\<\>]*\)(?!;)$/ ){
my $newline = $line =~ s/\n/;\n/r;
my $nesting_index = 0;
while(!eof $header){

View File

@ -66,6 +66,17 @@ A constructor with definition in header
A classic constructor with arguments
%End
QgsSipifyHeader( bool a = true );
%Docstring
A constructor with no empty `()`
%End
QgsSipifyHeader( QList<Point> a, const Issues &b = Issues::weDontHaveIssues(), QgsClass *b = 0 );
%Docstring
A constructor with some special character types
%End
{}
QgsSipifyHeader();
%Docstring
Default constructor

View File

@ -101,6 +101,16 @@ class CORE_EXPORT QgsSipifyHeader : public QtClass<QVariant>, private QgsBaseCla
*/
QgsSipifyHeader( QWidget *parent SIP_TRANSFERTHIS = nullptr );
//! A constructor with no empty `()`
QgsSipifyHeader( bool a = true )
: mMember( nullptr )
{}
//! A constructor with some special character types
QgsSipifyHeader( QList<Point> a, const Issues &b = Issues::weDontHaveIssues(), QgsClass *b = nullptr )
: mMember( nullptr )
{}
//! Default constructor
QgsSipifyHeader() = default;