Mercurial Hosting > luan
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 { |