12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- package java.internal;
- import java.lang.Throwable;
- @:nativegen @:keep @:native("haxe.lang.HaxeException") private class HaxeException extends RuntimeException
- {
- private var obj:Dynamic;
-
- public function new(obj:Dynamic, msg:String, cause:Throwable)
- {
- super(msg, cause);
-
- if (Std.is(obj, HaxeException))
- {
- var _obj:HaxeException = cast obj;
- obj = _obj.getObject();
- }
-
- this.obj = obj;
- }
-
- public function getObject():Dynamic
- {
- return obj;
- }
-
- public function toString():String
- {
- return "Haxe Exception: " + obj;
- }
-
- public static function wrap(obj:Dynamic):RuntimeException
- {
- if (Std.is(obj, RuntimeException))
- return obj;
-
- if (Std.is(obj, String))
- return new HaxeException(obj, obj, null);
- else if (Std.is(obj, Throwable))
- return new HaxeException(obj, null, obj);
-
- return new HaxeException(obj, null, null);
- }
- }
|