Add nulls, and more newdecl and type system features.

New null_t type has a constant "null", which can be assigned to objects.
Methodmaps can now be "nullable", accepting null_t types.
The delete keyword now zaps non-const lvalue inputs.
Fixed some newdecl arguments not accepting references.
Allow functag matching to coerce arguments and return values.
Allow functags to accept new-style types as a return value.
This commit is contained in:
David Anderson
2014-07-05 13:20:06 -07:00
parent 96bbd4d7e0
commit 9ff38bcf80
7 changed files with 161 additions and 34 deletions
+1 -1
View File
@@ -78,7 +78,7 @@ native Handle:CloneHandle(Handle:hndl, Handle:plugin=INVALID_HANDLE);
/**
* Helper for object-oriented syntax.
*/
methodmap Handle
methodmap Handle __nullable__
{
public Clone() = CloneHandle;
public ~Handle() = CloseHandle;