|
@@ -5,6 +5,7 @@ Framework Brl.Standardio
|
|
|
|
|
|
Type TMyObject
|
|
Type TMyObject
|
|
field prop:int = 10
|
|
field prop:int = 10
|
|
|
|
+ field stringProp:string = "unmodified"
|
|
End Type
|
|
End Type
|
|
|
|
|
|
local obj:TMyObject = new TMyObject
|
|
local obj:TMyObject = new TMyObject
|
|
@@ -17,8 +18,42 @@ Function ModifyVar:int(obj:TMyObject var)
|
|
obj.prop = 30
|
|
obj.prop = 30
|
|
End Function
|
|
End Function
|
|
|
|
|
|
|
|
+Function ModifyVarNew:int(obj:TMyObject var)
|
|
|
|
+ obj = New TMyObject
|
|
|
|
+ obj.prop = 40
|
|
|
|
+End Function
|
|
|
|
+
|
|
|
|
+Function ModifyProp:int(val:int var)
|
|
|
|
+ val = 50
|
|
|
|
+End Function
|
|
|
|
+
|
|
|
|
+'this should do not change the given param
|
|
|
|
+Function ModifyNoChange:int(val:int)
|
|
|
|
+ val = 60
|
|
|
|
+End Function
|
|
|
|
+
|
|
|
|
+'this should do not change the given param
|
|
|
|
+Function ModifyString:int(val:string var)
|
|
|
|
+ val = "modified"
|
|
|
|
+End Function
|
|
|
|
+
|
|
|
|
+'this should do not change the given param
|
|
|
|
+Function ModifyStringNoChange:int(val:string)
|
|
|
|
+ val = "modified"
|
|
|
|
+End Function
|
|
|
|
+
|
|
print obj.prop
|
|
print obj.prop
|
|
Modify(obj)
|
|
Modify(obj)
|
|
print obj.prop
|
|
print obj.prop
|
|
ModifyVar(obj)
|
|
ModifyVar(obj)
|
|
-print obj.prop
|
|
|
|
|
|
+print obj.prop
|
|
|
|
+ModifyVarNew(obj)
|
|
|
|
+print obj.prop
|
|
|
|
+ModifyProp(obj.prop)
|
|
|
|
+print obj.prop
|
|
|
|
+ModifyNoChange(obj.prop)
|
|
|
|
+print obj.prop
|
|
|
|
+ModifyStringNoChange(obj.stringProp)
|
|
|
|
+print obj.stringProp
|
|
|
|
+ModifyString(obj.stringProp)
|
|
|
|
+print obj.stringProp
|