summaryrefslogtreecommitdiffstats
path: root/src/entry.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/entry.h')
-rw-r--r--src/entry.h117
1 files changed, 66 insertions, 51 deletions
diff --git a/src/entry.h b/src/entry.h
index 1c8abac..cecd095 100644
--- a/src/entry.h
+++ b/src/entry.h
@@ -79,9 +79,11 @@ class Entry
INTERFACEDOC_SEC = 0x00010000,
PROTOCOLDOC_SEC = 0x00020000,
CATEGORYDOC_SEC = 0x00040000,
+ SERVICEDOC_SEC = 0x00080000,
+ SINGLETONDOC_SEC = 0x00100000,
COMPOUNDDOC_MASK = CLASSDOC_SEC | STRUCTDOC_SEC | UNIONDOC_SEC |
INTERFACEDOC_SEC | EXCEPTIONDOC_SEC | PROTOCOLDOC_SEC |
- CATEGORYDOC_SEC,
+ CATEGORYDOC_SEC | SERVICEDOC_SEC | SINGLETONDOC_SEC,
SOURCE_SEC = 0x00400000,
HEADER_SEC = 0x00800000,
@@ -111,56 +113,69 @@ class Entry
PACKAGEDOC_SEC = 0x16000000,
OBJCIMPL_SEC = 0x17000000,
DIRDOC_SEC = 0x18000000
+ ,EXPORTED_INTERFACE_SEC = 0x19000000
+ ,INCLUDED_SERVICE_SEC = 0x1A000000
};
- enum MemberSpecifier
- {
- Inline = 0x00000001,
- Explicit = 0x00000002,
- Mutable = 0x00000004,
- Settable = 0x00000008,
- Gettable = 0x00000010,
- Readable = 0x00000020,
- Writable = 0x00000040,
- Final = 0x00000080,
- Abstract = 0x00000100,
- Addable = 0x00000200,
- Removable = 0x00000400,
- Raisable = 0x00000800,
- Override = 0x00001000,
- New = 0x00002000,
- Sealed = 0x00004000,
- Initonly = 0x00008000,
- Optional = 0x00010000,
- Required = 0x00020000,
- NonAtomic = 0x00040000,
- Copy = 0x00080000,
- Retain = 0x00100000,
- Assign = 0x00200000,
- Strong = 0x00400000,
- Weak = 0x00800000,
- Unretained = 0x01000000,
- Alias = 0x02000000,
- ConstExp = 0x04000000,
- Default = 0x08000000,
- Delete = 0x10000000,
- NoExcept = 0x20000000
- };
- enum ClassSpecifier
- {
- Template = 0x0001,
- Generic = 0x0002,
- Ref = 0x0004,
- Value = 0x0008,
- Interface = 0x0010,
- Struct = 0x0020,
- Union = 0x0040,
- Exception = 0x0080,
- Protocol = 0x0100,
- Category = 0x0200,
- SealedClass = 0x0400,
- AbstractClass = 0x0800,
- Enum = 0x1000 // for Java-style enums
- };
+
+ // class specifiers (add new items to the end)
+ static const uint64 Template = (1ULL<<0);
+ static const uint64 Generic = (1ULL<<1);
+ static const uint64 Ref = (1ULL<<2);
+ static const uint64 Value = (1ULL<<3);
+ static const uint64 Interface = (1ULL<<4);
+ static const uint64 Struct = (1ULL<<5);
+ static const uint64 Union = (1ULL<<6);
+ static const uint64 Exception = (1ULL<<7);
+ static const uint64 Protocol = (1ULL<<8);
+ static const uint64 Category = (1ULL<<9);
+ static const uint64 SealedClass = (1ULL<<10);
+ static const uint64 AbstractClass = (1ULL<<11);
+ static const uint64 Enum = (1ULL<<12); // for Java-style enums
+ static const uint64 Service = (1ULL<<13); // UNO IDL
+ static const uint64 Singleton = (1ULL<<14); // UNO IDL
+
+ // member specifiers (add new items to the beginning)
+ static const uint64 Inline = (1ULL<<24);
+ static const uint64 Explicit = (1ULL<<25);
+ static const uint64 Mutable = (1ULL<<26);
+ static const uint64 Settable = (1ULL<<27);
+ static const uint64 Gettable = (1ULL<<28);
+ static const uint64 Readable = (1ULL<<29);
+ static const uint64 Writable = (1ULL<<30);
+ static const uint64 Final = (1ULL<<31);
+ static const uint64 Abstract = (1ULL<<32);
+ static const uint64 Addable = (1ULL<<33);
+ static const uint64 Removable = (1ULL<<34);
+ static const uint64 Raisable = (1ULL<<35);
+ static const uint64 Override = (1ULL<<36);
+ static const uint64 New = (1ULL<<37);
+ static const uint64 Sealed = (1ULL<<38);
+ static const uint64 Initonly = (1ULL<<39);
+ static const uint64 Optional = (1ULL<<40);
+ static const uint64 Required = (1ULL<<41);
+ static const uint64 NonAtomic = (1ULL<<42);
+ static const uint64 Copy = (1ULL<<43);
+ static const uint64 Retain = (1ULL<<44);
+ static const uint64 Assign = (1ULL<<45);
+ static const uint64 Strong = (1ULL<<46);
+ static const uint64 Weak = (1ULL<<47);
+ static const uint64 Unretained = (1ULL<<48);
+ static const uint64 Alias = (1ULL<<49);
+ static const uint64 ConstExp = (1ULL<<50);
+ static const uint64 Default = (1ULL<<51);
+ static const uint64 Delete = (1ULL<<52);
+ static const uint64 NoExcept = (1ULL<<53);
+ static const uint64 Attribute = (1ULL<<54); // UNO IDL attribute
+ static const uint64 Property = (1ULL<<55); // UNO IDL property
+ static const uint64 Readonly = (1ULL<<56); // on UNO IDL attribute or property
+ static const uint64 Bound = (1ULL<<57); // on UNO IDL attribute or property
+ static const uint64 Constrained = (1ULL<<58); // on UNO IDL property
+ static const uint64 Transient = (1ULL<<59); // on UNO IDL property
+ static const uint64 MaybeVoid = (1ULL<<60); // on UNO IDL property
+ static const uint64 MaybeDefault = (1ULL<<61); // on UNO IDL property
+ static const uint64 MaybeAmbiguous = (1ULL<<62); // on UNO IDL property
+ static const uint64 Published = (1ULL<<63); // UNO IDL keyword
+
enum GroupDocType
{
GROUPDOC_NORMAL, //!< defgroup
@@ -220,7 +235,7 @@ class Entry
// content
Protection protection; //!< class protection
MethodTypes mtype; //!< signal, slot, (dcop) method, or property?
- int spec; //!< class/member specifiers
+ uint64 spec; //!< class/member specifiers
int initLines; //!< define/variable initializer lines to show
bool stat; //!< static ?
bool explicitExternal; //!< explicitly defined as external?