45 lines
823 B
Haxe
45 lines
823 B
Haxe
|
package impl;
|
||
|
|
||
|
import api.HaxeObject;
|
||
|
|
||
|
@:keep
|
||
|
class HaxeImpl implements HaxeObject
|
||
|
{
|
||
|
var parentName:String;
|
||
|
var name:String;
|
||
|
var haxeObject:HaxeObject;
|
||
|
|
||
|
public function new(?inParent:HaxeImpl)
|
||
|
{
|
||
|
haxeObject = null;
|
||
|
parentName = inParent==null ? "" : inParent.name;
|
||
|
if (haxeObject==null)
|
||
|
haxeObject = this;
|
||
|
}
|
||
|
|
||
|
public function getName( ):cpp.StdString
|
||
|
{
|
||
|
return cpp.StdString.ofString(name);
|
||
|
}
|
||
|
|
||
|
@:unreflective
|
||
|
public function setName( inName:cpp.StdStringRef ) : Void
|
||
|
{
|
||
|
name = inName.toString();
|
||
|
}
|
||
|
|
||
|
public function createChild() : HaxeObject
|
||
|
{
|
||
|
var child = new HaxeImpl(this);
|
||
|
return child;
|
||
|
}
|
||
|
|
||
|
public function printInt(x:Int):Void
|
||
|
{
|
||
|
Sys.println( Std.string(x) );
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
|