Mercurial > projects > qtd
comparison generator/abstractmetalang.h @ 357:9784459f0750
An attempt (failed due to optlink) to improve locality of declarations exported from QtD executables
Q_CLASSINFO implementation
Now Qtd can be built on Windows
author | Max Samukha <maxter@spambox.com> |
---|---|
date | Wed, 02 Jun 2010 19:38:05 +0300 |
parents | 18bd68f586c6 |
children |
comparison
equal
deleted
inserted
replaced
356:12cec2d14e1c | 357:9784459f0750 |
---|---|
393 DestructorFunction, | 393 DestructorFunction, |
394 NormalFunction, | 394 NormalFunction, |
395 SignalFunction, | 395 SignalFunction, |
396 EmptyFunction, | 396 EmptyFunction, |
397 SlotFunction, | 397 SlotFunction, |
398 GlobalScopeFunction | 398 GlobalScopeFunction, |
399 }; | 399 }; |
400 | 400 |
401 enum CompareResult { | 401 enum CompareResult { |
402 EqualName = 0x00000001, | 402 EqualName = 0x00000001, |
403 EqualArguments = 0x00000002, | 403 EqualArguments = 0x00000002, |
412 | 412 |
413 PrettySimilar = EqualName | EqualArguments | EqualConstness, | 413 PrettySimilar = EqualName | EqualArguments | EqualConstness, |
414 Equal = 0x0000001f, | 414 Equal = 0x0000001f, |
415 NotEqual = 0x00001000 | 415 NotEqual = 0x00001000 |
416 }; | 416 }; |
417 | |
418 enum Option | |
419 { | |
420 NoOptions = 0, | |
421 DeclaringClass = 0x01, | |
422 NoExternNamespace = 0x02 | |
423 }; | |
424 | |
425 typedef QFlags<Option> Options; | |
417 | 426 |
418 AbstractMetaFunction() | 427 AbstractMetaFunction() |
419 : m_function_type(NormalFunction), | 428 : m_function_type(NormalFunction), |
420 m_type(0), | 429 m_type(0), |
421 m_class(0), | 430 m_class(0), |
442 QString modifiedName() const; | 451 QString modifiedName() const; |
443 | 452 |
444 QString minimalSignature(int reduce = 0) const; | 453 QString minimalSignature(int reduce = 0) const; |
445 QStringList possibleIntrospectionCompatibleSignatures() const; | 454 QStringList possibleIntrospectionCompatibleSignatures() const; |
446 | 455 |
447 QString marshalledName(bool classIsOwner = true) const; | 456 QString marshalledName(Options options = NoOptions) const; |
448 | 457 |
449 // true if one or more of the arguments are of QtJambiObject subclasses | 458 // true if one or more of the arguments are of QtJambiObject subclasses |
450 bool argumentsHaveNativeId() const | 459 bool argumentsHaveNativeId() const |
451 { | 460 { |
452 foreach (const AbstractMetaArgument *arg, m_arguments) { | 461 foreach (const AbstractMetaArgument *arg, m_arguments) { |