comparison core/src/luan/modules/JavaLuan.java @ 576:4723d22062ce

remove LuanBit
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 13 Jul 2015 20:38:26 -0600
parents 7c3ad6db8ac3
children 60c549d43988
comparison
equal deleted inserted replaced
575:7c3ad6db8ac3 576:4723d22062ce
21 import luan.LuanTable; 21 import luan.LuanTable;
22 import luan.LuanException; 22 import luan.LuanException;
23 import luan.LuanFunction; 23 import luan.LuanFunction;
24 import luan.LuanJavaFunction; 24 import luan.LuanJavaFunction;
25 import luan.LuanElement; 25 import luan.LuanElement;
26 import luan.LuanBit;
27 26
28 27
29 public final class JavaLuan { 28 public final class JavaLuan {
30 29
31 public static void java(LuanState luan) throws LuanException { 30 public static void java(LuanState luan) throws LuanException {
139 } catch(IllegalAccessException e) { 138 } catch(IllegalAccessException e) {
140 throw new RuntimeException(e); 139 throw new RuntimeException(e);
141 } 140 }
142 } 141 }
143 142
144 public static void __new_index(LuanBit bit,Object obj,Object key,Object value) throws LuanException { 143 public static void __new_index(LuanState luan,Object obj,Object key,Object value) throws LuanException {
145 LuanState luan = bit.luan;
146 checkJava(luan); 144 checkJava(luan);
147 Class cls; 145 Class cls;
148 if( obj instanceof Static ) { 146 if( obj instanceof Static ) {
149 Static st = (Static)obj; 147 Static st = (Static)obj;
150 cls = st.cls; 148 cls = st.cls;
177 setMember(obj,members,value); 175 setMember(obj,members,value);
178 return; 176 return;
179 } 177 }
180 } 178 }
181 } 179 }
182 if( bit.el != null ) 180 throw luan.exception( "invalid index for java "+cls+" in '"+luan.context()+"'" );
183 throw bit.exception( "invalid index for java "+cls+" in '"+bit.el.text()+"'" );
184 else
185 throw bit.exception( "invalid index for java "+cls );
186 } 181 }
187 182
188 private static void setMember(Object obj,List<Member> members,Object value) { 183 private static void setMember(Object obj,List<Member> members,Object value) {
189 Field field = (Field)members.get(0); 184 Field field = (Field)members.get(0);
190 try { 185 try {