Mercurial Hosting > luan
comparison core/src/luan/modules/JavaLuan.java @ 510:2da0bcb979b5
better error messages
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 22 May 2015 02:28:15 -0600 |
parents | e3b0846dc2ef |
children | e3fb9768dbb3 |
comparison
equal
deleted
inserted
replaced
509:e3b0846dc2ef | 510:2da0bcb979b5 |
---|---|
53 LuanState luan = bit.luan; | 53 LuanState luan = bit.luan; |
54 Object rtn = __index(luan,obj,key); | 54 Object rtn = __index(luan,obj,key); |
55 if( rtn != FAIL ) | 55 if( rtn != FAIL ) |
56 return rtn; | 56 return rtn; |
57 if( bit.el != null ) | 57 if( bit.el != null ) |
58 throw bit.exception( "invalid index ["+luan.toString(key)+"] for ("+bit.el.text()+") java: "+obj.getClass() ); | 58 throw bit.exception( "invalid index for java "+obj.getClass()+" in '"+bit.el.text()+"'" ); |
59 else | 59 else |
60 throw bit.exception( "invalid index ["+luan.toString(key)+"] for java: "+obj.getClass() ); | 60 throw bit.exception( "invalid index for java "+obj.getClass() ); |
61 } | 61 } |
62 | 62 |
63 public static Object __index(LuanState luan,Object obj,Object key) throws LuanException { | 63 public static Object __index(LuanState luan,Object obj,Object key) throws LuanException { |
64 checkJava(luan); | 64 checkJava(luan); |
65 if( obj instanceof Static ) { | 65 if( obj instanceof Static ) { |
103 } | 103 } |
104 Integer i = Luan.asInteger(key); | 104 Integer i = Luan.asInteger(key); |
105 if( i != null ) { | 105 if( i != null ) { |
106 return Array.get(obj,i); | 106 return Array.get(obj,i); |
107 } | 107 } |
108 throw luan.exception("invalid member '"+key+"' for java array: "+obj); | 108 // throw luan.exception("invalid member '"+key+"' for java array: "+obj); |
109 } | 109 } else if( key instanceof String ) { |
110 if( key instanceof String ) { | |
111 String name = (String)key; | 110 String name = (String)key; |
112 if( "instanceof".equals(name) ) { | 111 if( "instanceof".equals(name) ) { |
113 return new LuanJavaFunction(instanceOf,new InstanceOf(obj)); | 112 return new LuanJavaFunction(instanceOf,new InstanceOf(obj)); |
114 } else { | 113 } else { |
115 List<Member> members = getMembers(cls,name); | 114 List<Member> members = getMembers(cls,name); |