Keywords
The following words are treated as keywords in C#, and have special meaning:
RemObjects C# Keywords
RemObjects C# adds the following handful of keywords to support some Language Extensions to Microsoft's standard C# implementation.
__aspect— referencing Aspects__autoreleasepool— defining Auto-Release Pools for ARC__block— defining Blocks__ensure— Class Contracts (Post-Conditions)__extension— declare a type extension__inline— declaring inline methods__invariants— Class Contracts (Invariants)__mapped— defining Mapped Types__old— Class Contracts (Post-Conditions)__published— "Published" visibility for class members, when using Delphi SDKs__require— Class Contracts (Pre-Conditions)__result— accessing the result of a method__selector— declaring selector literals__strong— optional Storage Modifier for strong references in ARC (default)__unretained— Storage Modifier for unsafe/unretained references in ARC__weak— Storage Modifier for weak references in ARC
Standard C# Keywords
These standard keywords are defined by the C# language spec (as of version 5.0 of the C# language), and are also all used by RemObjects C#:
abstractaddasascendingassemblyasyncawaitbaseboolbreakbybytecasecatchcharcheckedclassconstcontinuedecimaldefaultdelegatedescendingdodoubledynamicelseenumequalseventexplicitexternfalsefieldfilefinallyfixedfloatforforeachfromgetgotogroupifimplicitinintinterfaceinternalintoisjoinletlocklongmainmanagedmodulenamespacenewnullobjectonoperatororderbyoutoverrideparamspartialprivateprotectedpublicreadonlyrefremovereturnsbytescopedsealedselectsetshortsizeofstackallocstaticstringstructswitchthisthrowtruetrytypeofuintulonguncheckedunmanagedunsafeushortusingvaluevarvirtualvoidvolatilewherewhile-
yield -
Cdecl FastcallStdcallThiscall
The following four (undocumented) standard C# keywords are not supported. RemObjects C# will recognize them as keywords, but merely emit an error and not allow their use:
__arglist__refvalue__makeref__reftype
Version Notes
- Support for
__inlineis new in Version 8.1.