diff options
-rw-r--r-- | src/entry.h | 4 | ||||
-rw-r--r-- | src/scanner.l | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/entry.h b/src/entry.h index a861906..3e5f3d7 100644 --- a/src/entry.h +++ b/src/entry.h @@ -135,6 +135,10 @@ class Entry static const uint64 Singleton = (1ULL<<14); // UNO IDL // member specifiers (add new items to the beginning) + static const uint64 PrivateGettable = (1ULL<<20); // C# private getter + static const uint64 ProtectedGettable = (1ULL<<21); // C# protected getter + static const uint64 PrivateSettable = (1ULL<<22); // C# private setter + static const uint64 ProtectedSettable = (1ULL<<23); // C# protected setter static const uint64 Inline = (1ULL<<24); static const uint64 Explicit = (1ULL<<25); static const uint64 Mutable = (1ULL<<26); diff --git a/src/scanner.l b/src/scanner.l index a39d02e..50e3b18 100644 --- a/src/scanner.l +++ b/src/scanner.l @@ -6129,6 +6129,10 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}) BEGIN(FindMembers); } } +<CSAccessorDecl>"private "{BN}*"set" { if (curlyCount==0) current->spec |= Entry::PrivateSettable; } +<CSAccessorDecl>"protected "{BN}*"set" { if (curlyCount==0) current->spec |= Entry::ProtectedSettable; } +<CSAccessorDecl>"private "{BN}*"get" { if (curlyCount==0) current->spec |= Entry::PrivateGettable; } +<CSAccessorDecl>"protected "{BN}*"get" { if (curlyCount==0) current->spec |= Entry::ProtectedGettable; } <CSAccessorDecl>"set" { if (curlyCount==0) current->spec |= Entry::Settable; } <CSAccessorDecl>"get" { if (curlyCount==0) current->spec |= Entry::Gettable; } <CSAccessorDecl>"add" { if (curlyCount==0) current->spec |= Entry::Addable; } |