1 // This file was generated by
2 //     //third_party/jni_zero/jni_zero.py
3 // For
4 //     java.lang.Runtime
5 
6 #ifndef java_lang_Runtime_JNI
7 #define java_lang_Runtime_JNI
8 
9 #include <jni.h>
10 
11 #include "third_party/jni_zero/jni_export.h"
12 #include "third_party/jni_zero/jni_zero_internal.h"
13 // Class Accessors.
14 #ifndef java_lang_Runtime_clazz_defined
15 #define java_lang_Runtime_clazz_defined
java_lang_Runtime_clazz(JNIEnv * env)16 inline jclass java_lang_Runtime_clazz(JNIEnv* env) {
17   static const char kClassName[] = "java.lang.Runtime";
18   static std::atomic<jclass> cached_class;
19   return jni_zero::internal::LazyGetClass(env, kClassName, &cached_class);
20 }
21 #endif
22 
23 namespace JNI_Runtime {
24 // Native to Java functions
Java_Runtime_Constructor(JNIEnv * env)25 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_Constructor(
26     JNIEnv* env) {
27   static std::atomic<jmethodID> cached_method_id(nullptr);
28   jclass clazz = java_lang_Runtime_clazz(env);
29   CHECK_CLAZZ(env, clazz, clazz, nullptr);
30   jni_zero::internal::JniJavaCallContext<true> call_context;
31   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
32       env,
33       clazz,
34       "<init>",
35       "()V",
36       &cached_method_id);
37   auto ret = env->NewObject(clazz, call_context.method_id());
38   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
39 }
40 
Java_Runtime_addShutdownHook(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jobject> & p0)41 [[maybe_unused]] static void Java_Runtime_addShutdownHook(
42     JNIEnv* env,
43     const jni_zero::JavaRef<jobject>& obj,
44     const jni_zero::JavaRef<jobject>& p0) {
45   static std::atomic<jmethodID> cached_method_id(nullptr);
46   jclass clazz = java_lang_Runtime_clazz(env);
47   CHECK_CLAZZ(env, obj.obj(), clazz);
48   jni_zero::internal::JniJavaCallContext<true> call_context;
49   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
50       env,
51       clazz,
52       "addShutdownHook",
53       "(Ljava/lang/Thread;)V",
54       &cached_method_id);
55   env->CallVoidMethod(obj.obj(), call_context.method_id(), p0.obj());
56 }
57 
Java_Runtime_availableProcessors(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)58 [[maybe_unused]] static jint Java_Runtime_availableProcessors(
59     JNIEnv* env,
60     const jni_zero::JavaRef<jobject>& obj) {
61   static std::atomic<jmethodID> cached_method_id(nullptr);
62   jclass clazz = java_lang_Runtime_clazz(env);
63   CHECK_CLAZZ(env, obj.obj(), clazz, 0);
64   jni_zero::internal::JniJavaCallContext<true> call_context;
65   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
66       env,
67       clazz,
68       "availableProcessors",
69       "()I",
70       &cached_method_id);
71   auto ret = env->CallIntMethod(obj.obj(), call_context.method_id());
72   return ret;
73 }
74 
Java_Runtime_exec__String(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jstring> & p0)75 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__String(
76     JNIEnv* env,
77     const jni_zero::JavaRef<jobject>& obj,
78     const jni_zero::JavaRef<jstring>& p0) {
79   static std::atomic<jmethodID> cached_method_id(nullptr);
80   jclass clazz = java_lang_Runtime_clazz(env);
81   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
82   jni_zero::internal::JniJavaCallContext<true> call_context;
83   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
84       env,
85       clazz,
86       "exec",
87       "(Ljava/lang/String;)Ljava/lang/Process;",
88       &cached_method_id);
89   auto ret = env->CallObjectMethod(
90       obj.obj(),
91       call_context.method_id(),
92       p0.obj());
93   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
94 }
95 
Java_Runtime_exec__String__StringArray(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jstring> & p0,const jni_zero::JavaRef<jobjectArray> & p1)96 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__String__StringArray(
97     JNIEnv* env,
98     const jni_zero::JavaRef<jobject>& obj,
99     const jni_zero::JavaRef<jstring>& p0,
100     const jni_zero::JavaRef<jobjectArray>& p1) {
101   static std::atomic<jmethodID> cached_method_id(nullptr);
102   jclass clazz = java_lang_Runtime_clazz(env);
103   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
104   jni_zero::internal::JniJavaCallContext<true> call_context;
105   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
106       env,
107       clazz,
108       "exec",
109       "(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/Process;",
110       &cached_method_id);
111   auto ret = env->CallObjectMethod(
112       obj.obj(),
113       call_context.method_id(),
114       p0.obj(),
115       p1.obj());
116   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
117 }
118 
Java_Runtime_exec__String__StringArray__java_io_File(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jstring> & p0,const jni_zero::JavaRef<jobjectArray> & p1,const jni_zero::JavaRef<jobject> & p2)119 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__String__StringArray__java_io_File(
120     JNIEnv* env,
121     const jni_zero::JavaRef<jobject>& obj,
122     const jni_zero::JavaRef<jstring>& p0,
123     const jni_zero::JavaRef<jobjectArray>& p1,
124     const jni_zero::JavaRef<jobject>& p2) {
125   static std::atomic<jmethodID> cached_method_id(nullptr);
126   jclass clazz = java_lang_Runtime_clazz(env);
127   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
128   jni_zero::internal::JniJavaCallContext<true> call_context;
129   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
130       env,
131       clazz,
132       "exec",
133       "(Ljava/lang/String;[Ljava/lang/String;Ljava/io/File;)Ljava/lang/Process;",
134       &cached_method_id);
135   auto ret = env->CallObjectMethod(
136       obj.obj(),
137       call_context.method_id(),
138       p0.obj(),
139       p1.obj(),
140       p2.obj());
141   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
142 }
143 
Java_Runtime_exec__StringArray(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jobjectArray> & p0)144 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__StringArray(
145     JNIEnv* env,
146     const jni_zero::JavaRef<jobject>& obj,
147     const jni_zero::JavaRef<jobjectArray>& p0) {
148   static std::atomic<jmethodID> cached_method_id(nullptr);
149   jclass clazz = java_lang_Runtime_clazz(env);
150   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
151   jni_zero::internal::JniJavaCallContext<true> call_context;
152   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
153       env,
154       clazz,
155       "exec",
156       "([Ljava/lang/String;)Ljava/lang/Process;",
157       &cached_method_id);
158   auto ret = env->CallObjectMethod(
159       obj.obj(),
160       call_context.method_id(),
161       p0.obj());
162   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
163 }
164 
Java_Runtime_exec__StringArray__StringArray(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jobjectArray> & p0,const jni_zero::JavaRef<jobjectArray> & p1)165 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__StringArray__StringArray(
166     JNIEnv* env,
167     const jni_zero::JavaRef<jobject>& obj,
168     const jni_zero::JavaRef<jobjectArray>& p0,
169     const jni_zero::JavaRef<jobjectArray>& p1) {
170   static std::atomic<jmethodID> cached_method_id(nullptr);
171   jclass clazz = java_lang_Runtime_clazz(env);
172   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
173   jni_zero::internal::JniJavaCallContext<true> call_context;
174   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
175       env,
176       clazz,
177       "exec",
178       "([Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/Process;",
179       &cached_method_id);
180   auto ret = env->CallObjectMethod(
181       obj.obj(),
182       call_context.method_id(),
183       p0.obj(),
184       p1.obj());
185   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
186 }
187 
Java_Runtime_exec__StringArray__StringArray__java_io_File(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jobjectArray> & p0,const jni_zero::JavaRef<jobjectArray> & p1,const jni_zero::JavaRef<jobject> & p2)188 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_exec__StringArray__StringArray__java_io_File(
189     JNIEnv* env,
190     const jni_zero::JavaRef<jobject>& obj,
191     const jni_zero::JavaRef<jobjectArray>& p0,
192     const jni_zero::JavaRef<jobjectArray>& p1,
193     const jni_zero::JavaRef<jobject>& p2) {
194   static std::atomic<jmethodID> cached_method_id(nullptr);
195   jclass clazz = java_lang_Runtime_clazz(env);
196   CHECK_CLAZZ(env, obj.obj(), clazz, nullptr);
197   jni_zero::internal::JniJavaCallContext<true> call_context;
198   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
199       env,
200       clazz,
201       "exec",
202       "([Ljava/lang/String;[Ljava/lang/String;Ljava/io/File;)Ljava/lang/Process;",
203       &cached_method_id);
204   auto ret = env->CallObjectMethod(
205       obj.obj(),
206       call_context.method_id(),
207       p0.obj(),
208       p1.obj(),
209       p2.obj());
210   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
211 }
212 
Java_Runtime_exit(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,JniIntWrapper p0)213 [[maybe_unused]] static void Java_Runtime_exit(
214     JNIEnv* env,
215     const jni_zero::JavaRef<jobject>& obj,
216     JniIntWrapper p0) {
217   static std::atomic<jmethodID> cached_method_id(nullptr);
218   jclass clazz = java_lang_Runtime_clazz(env);
219   CHECK_CLAZZ(env, obj.obj(), clazz);
220   jni_zero::internal::JniJavaCallContext<true> call_context;
221   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
222       env,
223       clazz,
224       "exit",
225       "(I)V",
226       &cached_method_id);
227   env->CallVoidMethod(obj.obj(), call_context.method_id(), as_jint(p0));
228 }
229 
Java_Runtime_freeMemory(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)230 [[maybe_unused]] static jlong Java_Runtime_freeMemory(
231     JNIEnv* env,
232     const jni_zero::JavaRef<jobject>& obj) {
233   static std::atomic<jmethodID> cached_method_id(nullptr);
234   jclass clazz = java_lang_Runtime_clazz(env);
235   CHECK_CLAZZ(env, obj.obj(), clazz, 0);
236   jni_zero::internal::JniJavaCallContext<true> call_context;
237   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
238       env,
239       clazz,
240       "freeMemory",
241       "()J",
242       &cached_method_id);
243   auto ret = env->CallLongMethod(obj.obj(), call_context.method_id());
244   return ret;
245 }
246 
Java_Runtime_gc(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)247 [[maybe_unused]] static void Java_Runtime_gc(
248     JNIEnv* env,
249     const jni_zero::JavaRef<jobject>& obj) {
250   static std::atomic<jmethodID> cached_method_id(nullptr);
251   jclass clazz = java_lang_Runtime_clazz(env);
252   CHECK_CLAZZ(env, obj.obj(), clazz);
253   jni_zero::internal::JniJavaCallContext<true> call_context;
254   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
255       env,
256       clazz,
257       "gc",
258       "()V",
259       &cached_method_id);
260   env->CallVoidMethod(obj.obj(), call_context.method_id());
261 }
262 
Java_Runtime_getRuntime(JNIEnv * env)263 [[maybe_unused]] static jni_zero::ScopedJavaLocalRef<jobject> Java_Runtime_getRuntime(
264     JNIEnv* env) {
265   static std::atomic<jmethodID> cached_method_id(nullptr);
266   jclass clazz = java_lang_Runtime_clazz(env);
267   CHECK_CLAZZ(env, clazz, clazz, nullptr);
268   jni_zero::internal::JniJavaCallContext<true> call_context;
269   call_context.Init<jni_zero::MethodID::TYPE_STATIC>(
270       env,
271       clazz,
272       "getRuntime",
273       "()Ljava/lang/Runtime;",
274       &cached_method_id);
275   auto ret = env->CallStaticObjectMethod(clazz, call_context.method_id());
276   return jni_zero::ScopedJavaLocalRef<jobject>(env, ret);
277 }
278 
Java_Runtime_halt(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,JniIntWrapper p0)279 [[maybe_unused]] static void Java_Runtime_halt(
280     JNIEnv* env,
281     const jni_zero::JavaRef<jobject>& obj,
282     JniIntWrapper p0) {
283   static std::atomic<jmethodID> cached_method_id(nullptr);
284   jclass clazz = java_lang_Runtime_clazz(env);
285   CHECK_CLAZZ(env, obj.obj(), clazz);
286   jni_zero::internal::JniJavaCallContext<true> call_context;
287   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
288       env,
289       clazz,
290       "halt",
291       "(I)V",
292       &cached_method_id);
293   env->CallVoidMethod(obj.obj(), call_context.method_id(), as_jint(p0));
294 }
295 
Java_Runtime_load(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jstring> & p0)296 [[maybe_unused]] static void Java_Runtime_load(
297     JNIEnv* env,
298     const jni_zero::JavaRef<jobject>& obj,
299     const jni_zero::JavaRef<jstring>& p0) {
300   static std::atomic<jmethodID> cached_method_id(nullptr);
301   jclass clazz = java_lang_Runtime_clazz(env);
302   CHECK_CLAZZ(env, obj.obj(), clazz);
303   jni_zero::internal::JniJavaCallContext<true> call_context;
304   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
305       env,
306       clazz,
307       "load",
308       "(Ljava/lang/String;)V",
309       &cached_method_id);
310   env->CallVoidMethod(obj.obj(), call_context.method_id(), p0.obj());
311 }
312 
Java_Runtime_loadLibrary(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jstring> & p0)313 [[maybe_unused]] static void Java_Runtime_loadLibrary(
314     JNIEnv* env,
315     const jni_zero::JavaRef<jobject>& obj,
316     const jni_zero::JavaRef<jstring>& p0) {
317   static std::atomic<jmethodID> cached_method_id(nullptr);
318   jclass clazz = java_lang_Runtime_clazz(env);
319   CHECK_CLAZZ(env, obj.obj(), clazz);
320   jni_zero::internal::JniJavaCallContext<true> call_context;
321   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
322       env,
323       clazz,
324       "loadLibrary",
325       "(Ljava/lang/String;)V",
326       &cached_method_id);
327   env->CallVoidMethod(obj.obj(), call_context.method_id(), p0.obj());
328 }
329 
Java_Runtime_maxMemory(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)330 [[maybe_unused]] static jlong Java_Runtime_maxMemory(
331     JNIEnv* env,
332     const jni_zero::JavaRef<jobject>& obj) {
333   static std::atomic<jmethodID> cached_method_id(nullptr);
334   jclass clazz = java_lang_Runtime_clazz(env);
335   CHECK_CLAZZ(env, obj.obj(), clazz, 0);
336   jni_zero::internal::JniJavaCallContext<true> call_context;
337   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
338       env,
339       clazz,
340       "maxMemory",
341       "()J",
342       &cached_method_id);
343   auto ret = env->CallLongMethod(obj.obj(), call_context.method_id());
344   return ret;
345 }
346 
Java_Runtime_removeShutdownHook(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,const jni_zero::JavaRef<jobject> & p0)347 [[maybe_unused]] static jboolean Java_Runtime_removeShutdownHook(
348     JNIEnv* env,
349     const jni_zero::JavaRef<jobject>& obj,
350     const jni_zero::JavaRef<jobject>& p0) {
351   static std::atomic<jmethodID> cached_method_id(nullptr);
352   jclass clazz = java_lang_Runtime_clazz(env);
353   CHECK_CLAZZ(env, obj.obj(), clazz, false);
354   jni_zero::internal::JniJavaCallContext<true> call_context;
355   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
356       env,
357       clazz,
358       "removeShutdownHook",
359       "(Ljava/lang/Thread;)Z",
360       &cached_method_id);
361   auto ret = env->CallBooleanMethod(
362       obj.obj(),
363       call_context.method_id(),
364       p0.obj());
365   return ret;
366 }
367 
Java_Runtime_runFinalization(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)368 [[maybe_unused]] static void Java_Runtime_runFinalization(
369     JNIEnv* env,
370     const jni_zero::JavaRef<jobject>& obj) {
371   static std::atomic<jmethodID> cached_method_id(nullptr);
372   jclass clazz = java_lang_Runtime_clazz(env);
373   CHECK_CLAZZ(env, obj.obj(), clazz);
374   jni_zero::internal::JniJavaCallContext<true> call_context;
375   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
376       env,
377       clazz,
378       "runFinalization",
379       "()V",
380       &cached_method_id);
381   env->CallVoidMethod(obj.obj(), call_context.method_id());
382 }
383 
Java_Runtime_runFinalizersOnExit(JNIEnv * env,jboolean p0)384 [[maybe_unused]] static void Java_Runtime_runFinalizersOnExit(
385     JNIEnv* env,
386     jboolean p0) {
387   static std::atomic<jmethodID> cached_method_id(nullptr);
388   jclass clazz = java_lang_Runtime_clazz(env);
389   CHECK_CLAZZ(env, clazz, clazz);
390   jni_zero::internal::JniJavaCallContext<true> call_context;
391   call_context.Init<jni_zero::MethodID::TYPE_STATIC>(
392       env,
393       clazz,
394       "runFinalizersOnExit",
395       "(Z)V",
396       &cached_method_id);
397   env->CallStaticVoidMethod(clazz, call_context.method_id(), p0);
398 }
399 
Java_Runtime_totalMemory(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj)400 [[maybe_unused]] static jlong Java_Runtime_totalMemory(
401     JNIEnv* env,
402     const jni_zero::JavaRef<jobject>& obj) {
403   static std::atomic<jmethodID> cached_method_id(nullptr);
404   jclass clazz = java_lang_Runtime_clazz(env);
405   CHECK_CLAZZ(env, obj.obj(), clazz, 0);
406   jni_zero::internal::JniJavaCallContext<true> call_context;
407   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
408       env,
409       clazz,
410       "totalMemory",
411       "()J",
412       &cached_method_id);
413   auto ret = env->CallLongMethod(obj.obj(), call_context.method_id());
414   return ret;
415 }
416 
Java_Runtime_traceInstructions(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,jboolean p0)417 [[maybe_unused]] static void Java_Runtime_traceInstructions(
418     JNIEnv* env,
419     const jni_zero::JavaRef<jobject>& obj,
420     jboolean p0) {
421   static std::atomic<jmethodID> cached_method_id(nullptr);
422   jclass clazz = java_lang_Runtime_clazz(env);
423   CHECK_CLAZZ(env, obj.obj(), clazz);
424   jni_zero::internal::JniJavaCallContext<true> call_context;
425   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
426       env,
427       clazz,
428       "traceInstructions",
429       "(Z)V",
430       &cached_method_id);
431   env->CallVoidMethod(obj.obj(), call_context.method_id(), p0);
432 }
433 
Java_Runtime_traceMethodCalls(JNIEnv * env,const jni_zero::JavaRef<jobject> & obj,jboolean p0)434 [[maybe_unused]] static void Java_Runtime_traceMethodCalls(
435     JNIEnv* env,
436     const jni_zero::JavaRef<jobject>& obj,
437     jboolean p0) {
438   static std::atomic<jmethodID> cached_method_id(nullptr);
439   jclass clazz = java_lang_Runtime_clazz(env);
440   CHECK_CLAZZ(env, obj.obj(), clazz);
441   jni_zero::internal::JniJavaCallContext<true> call_context;
442   call_context.Init<jni_zero::MethodID::TYPE_INSTANCE>(
443       env,
444       clazz,
445       "traceMethodCalls",
446       "(Z)V",
447       &cached_method_id);
448   env->CallVoidMethod(obj.obj(), call_context.method_id(), p0);
449 }
450 
451 
452 }  // namespace JNI_Runtime
453 #endif  // java_lang_Runtime_JNI
454