1 #include "xmlvm.h"
2
3 #include "java_nio_Buffer.h"
4
5 #define XMLVM_CURRENT_CLASS_NAME Buffer
6 #define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_Buffer
7
8 __TIB_DEFINITION_java_nio_Buffer __TIB_java_nio_Buffer = {
9 0, // classInitializationBegan
10 0, // classInitialized
11 -1, // initializerThreadId
12 __INIT_java_nio_Buffer, // classInitializer
13 "java.nio.Buffer", // className
14 "java.nio", // package
15 JAVA_NULL, // enclosingClassName
16 JAVA_NULL, // enclosingMethodName
17 JAVA_NULL, // signature
18 (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends
19 sizeof(java_nio_Buffer), // sizeInstance
20 XMLVM_TYPE_CLASS};
21
22 JAVA_OBJECT __CLASS_java_nio_Buffer;
23 JAVA_OBJECT __CLASS_java_nio_Buffer_1ARRAY;
24 JAVA_OBJECT __CLASS_java_nio_Buffer_2ARRAY;
25 JAVA_OBJECT __CLASS_java_nio_Buffer_3ARRAY;
26 //XMLVM_BEGIN_IMPLEMENTATION
27 //XMLVM_END_IMPLEMENTATION
28
29 static JAVA_INT _STATIC_java_nio_Buffer_UNSET_MARK;
30
31 #include "xmlvm-reflection.h"
32
33 static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
34 };
35
36 static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
37 };
38
constructor_dispatcher(JAVA_OBJECT constructor,JAVA_OBJECT arguments)39 static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
40 {
41 XMLVM_NOT_IMPLEMENTED();
42 }
43
44 static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
45 };
46
method_dispatcher(JAVA_OBJECT method,JAVA_OBJECT receiver,JAVA_OBJECT arguments)47 static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
48 {
49 XMLVM_NOT_IMPLEMENTED();
50 }
51
__INIT_java_nio_Buffer()52 void __INIT_java_nio_Buffer()
53 {
54 staticInitializerLock(&__TIB_java_nio_Buffer);
55
56 // While the static initializer mutex is locked, locally store the value of
57 // whether class initialization began or not
58 int initBegan = __TIB_java_nio_Buffer.classInitializationBegan;
59
60 // Whether or not class initialization had already began, it has begun now
61 __TIB_java_nio_Buffer.classInitializationBegan = 1;
62
63 staticInitializerUnlock(&__TIB_java_nio_Buffer);
64
65 JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
66 if (initBegan) {
67 if (__TIB_java_nio_Buffer.initializerThreadId != curThreadId) {
68 // Busy wait until the other thread finishes initializing this class
69 while (!__TIB_java_nio_Buffer.classInitialized) {
70 // do nothing
71 }
72 }
73 } else {
74 __TIB_java_nio_Buffer.initializerThreadId = curThreadId;
75 XMLVM_CLASS_USED("java.nio.Buffer")
76 __INIT_IMPL_java_nio_Buffer();
77 }
78 }
79
__INIT_IMPL_java_nio_Buffer()80 void __INIT_IMPL_java_nio_Buffer()
81 {
82 // Initialize base class if necessary
83 XMLVM_CLASS_INIT(java_lang_Object)
84 __TIB_java_nio_Buffer.newInstanceFunc = __NEW_INSTANCE_java_nio_Buffer;
85 // Copy vtable from base class
86 XMLVM_MEMCPY(__TIB_java_nio_Buffer.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable));
87 // Initialize vtable for this class
88 // Initialize interface information
89 __TIB_java_nio_Buffer.numImplementedInterfaces = 0;
90 __TIB_java_nio_Buffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0);
91
92 // Initialize interfaces if necessary and assign tib to implementedInterfaces
93 _STATIC_java_nio_Buffer_UNSET_MARK = -1;
94
95 __TIB_java_nio_Buffer.declaredFields = &__field_reflection_data[0];
96 __TIB_java_nio_Buffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
97 __TIB_java_nio_Buffer.constructorDispatcherFunc = constructor_dispatcher;
98 __TIB_java_nio_Buffer.declaredConstructors = &__constructor_reflection_data[0];
99 __TIB_java_nio_Buffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
100 __TIB_java_nio_Buffer.methodDispatcherFunc = method_dispatcher;
101 __TIB_java_nio_Buffer.declaredMethods = &__method_reflection_data[0];
102 __TIB_java_nio_Buffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
103 __CLASS_java_nio_Buffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_Buffer);
104 __TIB_java_nio_Buffer.clazz = __CLASS_java_nio_Buffer;
105 __TIB_java_nio_Buffer.baseType = JAVA_NULL;
106 __CLASS_java_nio_Buffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer);
107 __CLASS_java_nio_Buffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_1ARRAY);
108 __CLASS_java_nio_Buffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_2ARRAY);
109 //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_Buffer]
110 //XMLVM_END_WRAPPER
111
112 __TIB_java_nio_Buffer.classInitialized = 1;
113 }
114
__DELETE_java_nio_Buffer(void * me,void * client_data)115 void __DELETE_java_nio_Buffer(void* me, void* client_data)
116 {
117 //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_Buffer]
118 //XMLVM_END_WRAPPER
119 }
120
__INIT_INSTANCE_MEMBERS_java_nio_Buffer(JAVA_OBJECT me,int derivedClassWillRegisterFinalizer)121 void __INIT_INSTANCE_MEMBERS_java_nio_Buffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
122 {
123 __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer);
124 ((java_nio_Buffer*) me)->fields.java_nio_Buffer.capacity_ = 0;
125 ((java_nio_Buffer*) me)->fields.java_nio_Buffer.limit_ = 0;
126 ((java_nio_Buffer*) me)->fields.java_nio_Buffer.mark_ = 0;
127 ((java_nio_Buffer*) me)->fields.java_nio_Buffer.position_ = 0;
128 //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_Buffer]
129 //XMLVM_END_WRAPPER
130 }
131
__NEW_java_nio_Buffer()132 JAVA_OBJECT __NEW_java_nio_Buffer()
133 { XMLVM_CLASS_INIT(java_nio_Buffer)
134 java_nio_Buffer* me = (java_nio_Buffer*) XMLVM_MALLOC(sizeof(java_nio_Buffer));
135 me->tib = &__TIB_java_nio_Buffer;
136 __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0);
137 //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_Buffer]
138 //XMLVM_END_WRAPPER
139 return me;
140 }
141
__NEW_INSTANCE_java_nio_Buffer()142 JAVA_OBJECT __NEW_INSTANCE_java_nio_Buffer()
143 {
144 JAVA_OBJECT me = JAVA_NULL;
145 return me;
146 }
147
java_nio_Buffer_GET_UNSET_MARK()148 JAVA_INT java_nio_Buffer_GET_UNSET_MARK()
149 {
150 XMLVM_CLASS_INIT(java_nio_Buffer)
151 return _STATIC_java_nio_Buffer_UNSET_MARK;
152 }
153
java_nio_Buffer_PUT_UNSET_MARK(JAVA_INT v)154 void java_nio_Buffer_PUT_UNSET_MARK(JAVA_INT v)
155 {
156 XMLVM_CLASS_INIT(java_nio_Buffer)
157 _STATIC_java_nio_Buffer_UNSET_MARK = v;
158 }
159
java_nio_Buffer___INIT____int(JAVA_OBJECT me,JAVA_INT n1)160 void java_nio_Buffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1)
161 {
162 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer___INIT____int]
163 XMLVM_ENTER_METHOD("java.nio.Buffer", "<init>", "?")
164 XMLVMElem _r0;
165 XMLVMElem _r1;
166 XMLVMElem _r2;
167 _r1.o = me;
168 _r2.i = n1;
169 XMLVM_SOURCE_POSITION("Buffer.java", 85)
170 XMLVM_CHECK_NPE(1)
171 java_lang_Object___INIT___(_r1.o);
172 XMLVM_SOURCE_POSITION("Buffer.java", 70)
173 _r0.i = -1;
174 XMLVM_CHECK_NPE(1)
175 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
176 XMLVM_SOURCE_POSITION("Buffer.java", 76)
177 _r0.i = 0;
178 XMLVM_CHECK_NPE(1)
179 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
180 XMLVM_SOURCE_POSITION("Buffer.java", 86)
181 if (_r2.i >= 0) goto label17;
182 XMLVM_SOURCE_POSITION("Buffer.java", 87)
183
184
185 // Red class access removed: java.lang.IllegalArgumentException::new-instance
186 XMLVM_RED_CLASS_DEPENDENCY();
187
188
189 // Red class access removed: java.lang.IllegalArgumentException::<init>
190 XMLVM_RED_CLASS_DEPENDENCY();
191 XMLVM_THROW_CUSTOM(_r0.o)
192 label17:;
193 XMLVM_SOURCE_POSITION("Buffer.java", 89)
194 XMLVM_CHECK_NPE(1)
195 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r2.i;
196 XMLVM_CHECK_NPE(1)
197 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_ = _r2.i;
198 XMLVM_SOURCE_POSITION("Buffer.java", 90)
199 XMLVM_EXIT_METHOD()
200 return;
201 //XMLVM_END_WRAPPER
202 }
203
java_nio_Buffer_capacity__(JAVA_OBJECT me)204 JAVA_INT java_nio_Buffer_capacity__(JAVA_OBJECT me)
205 {
206 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_capacity__]
207 XMLVM_ENTER_METHOD("java.nio.Buffer", "capacity", "?")
208 XMLVMElem _r0;
209 XMLVMElem _r1;
210 _r1.o = me;
211 XMLVM_SOURCE_POSITION("Buffer.java", 145)
212 XMLVM_CHECK_NPE(1)
213 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_;
214 XMLVM_EXIT_METHOD()
215 return _r0.i;
216 //XMLVM_END_WRAPPER
217 }
218
java_nio_Buffer_clear__(JAVA_OBJECT me)219 JAVA_OBJECT java_nio_Buffer_clear__(JAVA_OBJECT me)
220 {
221 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_clear__]
222 XMLVM_ENTER_METHOD("java.nio.Buffer", "clear", "?")
223 XMLVMElem _r0;
224 XMLVMElem _r1;
225 _r1.o = me;
226 XMLVM_SOURCE_POSITION("Buffer.java", 159)
227 _r0.i = 0;
228 XMLVM_CHECK_NPE(1)
229 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
230 XMLVM_SOURCE_POSITION("Buffer.java", 160)
231 _r0.i = -1;
232 XMLVM_CHECK_NPE(1)
233 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
234 XMLVM_SOURCE_POSITION("Buffer.java", 161)
235 XMLVM_CHECK_NPE(1)
236 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_;
237 XMLVM_CHECK_NPE(1)
238 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i;
239 XMLVM_SOURCE_POSITION("Buffer.java", 162)
240 XMLVM_EXIT_METHOD()
241 return _r1.o;
242 //XMLVM_END_WRAPPER
243 }
244
java_nio_Buffer_flip__(JAVA_OBJECT me)245 JAVA_OBJECT java_nio_Buffer_flip__(JAVA_OBJECT me)
246 {
247 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_flip__]
248 XMLVM_ENTER_METHOD("java.nio.Buffer", "flip", "?")
249 XMLVMElem _r0;
250 XMLVMElem _r1;
251 _r1.o = me;
252 XMLVM_SOURCE_POSITION("Buffer.java", 176)
253 XMLVM_CHECK_NPE(1)
254 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
255 XMLVM_CHECK_NPE(1)
256 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i;
257 XMLVM_SOURCE_POSITION("Buffer.java", 177)
258 _r0.i = 0;
259 XMLVM_CHECK_NPE(1)
260 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
261 XMLVM_SOURCE_POSITION("Buffer.java", 178)
262 _r0.i = -1;
263 XMLVM_CHECK_NPE(1)
264 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
265 XMLVM_SOURCE_POSITION("Buffer.java", 179)
266 XMLVM_EXIT_METHOD()
267 return _r1.o;
268 //XMLVM_END_WRAPPER
269 }
270
java_nio_Buffer_hasRemaining__(JAVA_OBJECT me)271 JAVA_BOOLEAN java_nio_Buffer_hasRemaining__(JAVA_OBJECT me)
272 {
273 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_hasRemaining__]
274 XMLVM_ENTER_METHOD("java.nio.Buffer", "hasRemaining", "?")
275 XMLVMElem _r0;
276 XMLVMElem _r1;
277 XMLVMElem _r2;
278 _r2.o = me;
279 XMLVM_SOURCE_POSITION("Buffer.java", 205)
280 XMLVM_CHECK_NPE(2)
281 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
282 XMLVM_CHECK_NPE(2)
283 _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_;
284 if (_r0.i >= _r1.i) goto label8;
285 _r0.i = 1;
286 label7:;
287 XMLVM_EXIT_METHOD()
288 return _r0.i;
289 label8:;
290 _r0.i = 0;
291 goto label7;
292 //XMLVM_END_WRAPPER
293 }
294
java_nio_Buffer_limit__(JAVA_OBJECT me)295 JAVA_INT java_nio_Buffer_limit__(JAVA_OBJECT me)
296 {
297 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit__]
298 XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?")
299 XMLVMElem _r0;
300 XMLVMElem _r1;
301 _r1.o = me;
302 XMLVM_SOURCE_POSITION("Buffer.java", 231)
303 XMLVM_CHECK_NPE(1)
304 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_;
305 XMLVM_EXIT_METHOD()
306 return _r0.i;
307 //XMLVM_END_WRAPPER
308 }
309
java_nio_Buffer_limit___int(JAVA_OBJECT me,JAVA_INT n1)310 JAVA_OBJECT java_nio_Buffer_limit___int(JAVA_OBJECT me, JAVA_INT n1)
311 {
312 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit___int]
313 XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?")
314 XMLVMElem _r0;
315 XMLVMElem _r1;
316 XMLVMElem _r2;
317 XMLVMElem _r3;
318 _r2.o = me;
319 _r3.i = n1;
320 _r1.i = -1;
321 XMLVM_SOURCE_POSITION("Buffer.java", 250)
322 if (_r3.i < 0) goto label7;
323 XMLVM_CHECK_NPE(2)
324 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.capacity_;
325 if (_r3.i <= _r0.i) goto label13;
326 label7:;
327 XMLVM_SOURCE_POSITION("Buffer.java", 251)
328
329
330 // Red class access removed: java.lang.IllegalArgumentException::new-instance
331 XMLVM_RED_CLASS_DEPENDENCY();
332
333
334 // Red class access removed: java.lang.IllegalArgumentException::<init>
335 XMLVM_RED_CLASS_DEPENDENCY();
336 XMLVM_THROW_CUSTOM(_r0.o)
337 label13:;
338 XMLVM_SOURCE_POSITION("Buffer.java", 254)
339 XMLVM_CHECK_NPE(2)
340 ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_ = _r3.i;
341 XMLVM_SOURCE_POSITION("Buffer.java", 255)
342 XMLVM_CHECK_NPE(2)
343 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
344 if (_r0.i <= _r3.i) goto label21;
345 XMLVM_SOURCE_POSITION("Buffer.java", 256)
346 XMLVM_CHECK_NPE(2)
347 ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r3.i;
348 label21:;
349 XMLVM_SOURCE_POSITION("Buffer.java", 258)
350 XMLVM_CHECK_NPE(2)
351 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
352 if (_r0.i == _r1.i) goto label31;
353 XMLVM_CHECK_NPE(2)
354 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
355 if (_r0.i <= _r3.i) goto label31;
356 XMLVM_SOURCE_POSITION("Buffer.java", 259)
357 XMLVM_CHECK_NPE(2)
358 ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_ = _r1.i;
359 label31:;
360 XMLVM_SOURCE_POSITION("Buffer.java", 261)
361 XMLVM_EXIT_METHOD()
362 return _r2.o;
363 //XMLVM_END_WRAPPER
364 }
365
java_nio_Buffer_mark__(JAVA_OBJECT me)366 JAVA_OBJECT java_nio_Buffer_mark__(JAVA_OBJECT me)
367 {
368 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_mark__]
369 XMLVM_ENTER_METHOD("java.nio.Buffer", "mark", "?")
370 XMLVMElem _r0;
371 XMLVMElem _r1;
372 _r1.o = me;
373 XMLVM_SOURCE_POSITION("Buffer.java", 271)
374 XMLVM_CHECK_NPE(1)
375 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
376 XMLVM_CHECK_NPE(1)
377 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
378 XMLVM_SOURCE_POSITION("Buffer.java", 272)
379 XMLVM_EXIT_METHOD()
380 return _r1.o;
381 //XMLVM_END_WRAPPER
382 }
383
java_nio_Buffer_position__(JAVA_OBJECT me)384 JAVA_INT java_nio_Buffer_position__(JAVA_OBJECT me)
385 {
386 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position__]
387 XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?")
388 XMLVMElem _r0;
389 XMLVMElem _r1;
390 _r1.o = me;
391 XMLVM_SOURCE_POSITION("Buffer.java", 281)
392 XMLVM_CHECK_NPE(1)
393 _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
394 XMLVM_EXIT_METHOD()
395 return _r0.i;
396 //XMLVM_END_WRAPPER
397 }
398
java_nio_Buffer_position___int(JAVA_OBJECT me,JAVA_INT n1)399 JAVA_OBJECT java_nio_Buffer_position___int(JAVA_OBJECT me, JAVA_INT n1)
400 {
401 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position___int]
402 XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?")
403 XMLVMElem _r0;
404 XMLVMElem _r1;
405 XMLVMElem _r2;
406 XMLVMElem _r3;
407 XMLVMElem _r4;
408 _r3.o = me;
409 _r4.i = n1;
410 _r2.i = -1;
411 XMLVM_SOURCE_POSITION("Buffer.java", 298)
412 if (_r4.i < 0) goto label7;
413 XMLVM_CHECK_NPE(3)
414 _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.limit_;
415 if (_r4.i <= _r0.i) goto label13;
416 label7:;
417 XMLVM_SOURCE_POSITION("Buffer.java", 299)
418
419
420 // Red class access removed: java.lang.IllegalArgumentException::new-instance
421 XMLVM_RED_CLASS_DEPENDENCY();
422
423
424 // Red class access removed: java.lang.IllegalArgumentException::<init>
425 XMLVM_RED_CLASS_DEPENDENCY();
426 XMLVM_THROW_CUSTOM(_r0.o)
427 label13:;
428 XMLVM_SOURCE_POSITION("Buffer.java", 302)
429 XMLVM_CHECK_NPE(3)
430 ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_ = _r4.i;
431 XMLVM_SOURCE_POSITION("Buffer.java", 303)
432 XMLVM_CHECK_NPE(3)
433 _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_;
434 if (_r0.i == _r2.i) goto label27;
435 XMLVM_CHECK_NPE(3)
436 _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_;
437 XMLVM_CHECK_NPE(3)
438 _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_;
439 if (_r0.i <= _r1.i) goto label27;
440 XMLVM_SOURCE_POSITION("Buffer.java", 304)
441 XMLVM_CHECK_NPE(3)
442 ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_ = _r2.i;
443 label27:;
444 XMLVM_SOURCE_POSITION("Buffer.java", 306)
445 XMLVM_EXIT_METHOD()
446 return _r3.o;
447 //XMLVM_END_WRAPPER
448 }
449
java_nio_Buffer_remaining__(JAVA_OBJECT me)450 JAVA_INT java_nio_Buffer_remaining__(JAVA_OBJECT me)
451 {
452 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_remaining__]
453 XMLVM_ENTER_METHOD("java.nio.Buffer", "remaining", "?")
454 XMLVMElem _r0;
455 XMLVMElem _r1;
456 XMLVMElem _r2;
457 _r2.o = me;
458 XMLVM_SOURCE_POSITION("Buffer.java", 316)
459 XMLVM_CHECK_NPE(2)
460 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_;
461 XMLVM_CHECK_NPE(2)
462 _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
463 _r0.i = _r0.i - _r1.i;
464 XMLVM_EXIT_METHOD()
465 return _r0.i;
466 //XMLVM_END_WRAPPER
467 }
468
java_nio_Buffer_reset__(JAVA_OBJECT me)469 JAVA_OBJECT java_nio_Buffer_reset__(JAVA_OBJECT me)
470 {
471 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_reset__]
472 XMLVM_ENTER_METHOD("java.nio.Buffer", "reset", "?")
473 XMLVMElem _r0;
474 XMLVMElem _r1;
475 XMLVMElem _r2;
476 _r2.o = me;
477 XMLVM_SOURCE_POSITION("Buffer.java", 327)
478 XMLVM_CHECK_NPE(2)
479 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
480 _r1.i = -1;
481 if (_r0.i != _r1.i) goto label11;
482 XMLVM_SOURCE_POSITION("Buffer.java", 328)
483
484
485 // Red class access removed: java.nio.InvalidMarkException::new-instance
486 XMLVM_RED_CLASS_DEPENDENCY();
487
488
489 // Red class access removed: java.nio.InvalidMarkException::<init>
490 XMLVM_RED_CLASS_DEPENDENCY();
491 XMLVM_THROW_CUSTOM(_r0.o)
492 label11:;
493 XMLVM_SOURCE_POSITION("Buffer.java", 330)
494 XMLVM_CHECK_NPE(2)
495 _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
496 XMLVM_CHECK_NPE(2)
497 ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i;
498 XMLVM_SOURCE_POSITION("Buffer.java", 331)
499 XMLVM_EXIT_METHOD()
500 return _r2.o;
501 //XMLVM_END_WRAPPER
502 }
503
java_nio_Buffer_rewind__(JAVA_OBJECT me)504 JAVA_OBJECT java_nio_Buffer_rewind__(JAVA_OBJECT me)
505 {
506 //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_rewind__]
507 XMLVM_ENTER_METHOD("java.nio.Buffer", "rewind", "?")
508 XMLVMElem _r0;
509 XMLVMElem _r1;
510 _r1.o = me;
511 XMLVM_SOURCE_POSITION("Buffer.java", 343)
512 _r0.i = 0;
513 XMLVM_CHECK_NPE(1)
514 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
515 XMLVM_SOURCE_POSITION("Buffer.java", 344)
516 _r0.i = -1;
517 XMLVM_CHECK_NPE(1)
518 ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
519 XMLVM_SOURCE_POSITION("Buffer.java", 345)
520 XMLVM_EXIT_METHOD()
521 return _r1.o;
522 //XMLVM_END_WRAPPER
523 }
524
525