w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

mruby.h
Go to the documentation of this file.
1 /*
2 ** mruby - An embeddable Ruby implementation
3 **
4 ** Copyright (c) mruby developers 2010-2021
5 **
6 ** Permission is hereby granted, free of charge, to any person obtaining
7 ** a copy of this software and associated documentation files (the
8 ** "Software"), to deal in the Software without restriction, including
9 ** without limitation the rights to use, copy, modify, merge, publish,
10 ** distribute, sublicense, and/or sell copies of the Software, and to
11 ** permit persons to whom the Software is furnished to do so, subject to
12 ** the following conditions:
13 **
14 ** The above copyright notice and this permission notice shall be
15 ** included in all copies or substantial portions of the Software.
16 **
17 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
21 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23 ** SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 **
25 ** [ MIT license: https://www.opensource.org/licenses/mit-license.php ]
26 */
27 
28 /**
29  * @file mruby.h
30  */
31 
32 #ifndef MRUBY_H
33 #define MRUBY_H
34 
35 #ifdef __cplusplus
36 #define __STDC_LIMIT_MACROS
37 #define __STDC_CONSTANT_MACROS
38 #define __STDC_FORMAT_MACROS
39 #endif
40 
41 #include <stdarg.h>
42 #include <stdint.h>
43 #include <stddef.h>
44 #include <limits.h>
45 
46 #ifdef __cplusplus
47 #ifndef SIZE_MAX
48 #ifdef __SIZE_MAX__
49 #define SIZE_MAX __SIZE_MAX__
50 #else
51 #define SIZE_MAX std::numeric_limits<size_t>::max()
52 #endif
53 #endif
54 #endif
55 
56 #ifdef _MSC_VER
57 # define __func__ __FUNCTION__
58 #endif
59 
60 #ifdef MRB_DEBUG
61 #include <assert.h>
62 #define mrb_assert(p) assert(p)
63 #define mrb_assert_int_fit(t1,n,t2,max) assert((n)>=0 && ((sizeof(n)<=sizeof(t2))||(n<=(t1)(max))))
64 #else
65 #define mrb_assert(p) ((void)0)
66 #define mrb_assert_int_fit(t1,n,t2,max) ((void)0)
67 #endif
68 
69 #if (defined __cplusplus && __cplusplus >= 201103L) || \
70  (defined _MSC_VER) || \
71  (defined __GXX_EXPERIMENTAL_CXX0X__) /* for old G++/Clang++ */
72 # define mrb_static_assert(exp, str) static_assert(exp, str)
73 #elif defined __STDC_VERSION__ && \
74  ((__STDC_VERSION__ >= 201112L) || \
75  (defined __GNUC__ && __GNUC__ * 100 + __GNUC_MINOR__ >= 406))
76 # define mrb_static_assert(exp, str) _Static_assert(exp, str)
77 #else
78 # /* alternative implementation of static_assert() */
79 # define _mrb_static_assert_cat0(a, b) a##b
80 # define _mrb_static_assert_cat(a, b) _mrb_static_assert_cat0(a, b)
81 # ifdef __COUNTER__
82 # define _mrb_static_assert_id(prefix) _mrb_static_assert_cat(prefix, __COUNTER__)
83 # else
84 # define _mrb_static_assert_id(prefix) _mrb_static_assert_cat(prefix, __LINE__)
85 # endif
86 # define mrb_static_assert(exp, str) \
87  struct _mrb_static_assert_id(_mrb_static_assert_) { char x[(exp) ? 1 : -1]; }
88 #endif
89 #define mrb_static_assert1(exp) mrb_static_assert(exp, #exp)
90 
91 #include "mrbconf.h"
92 
93 #include <mruby/common.h>
94 #include <mruby/value.h>
95 #include <mruby/gc.h>
96 #include <mruby/version.h>
97 
98 #ifndef MRB_NO_FLOAT
99 #include <float.h>
100 #ifndef FLT_EPSILON
101 #define FLT_EPSILON (1.19209290e-07f)
102 #endif
103 #ifndef DBL_EPSILON
104 #define DBL_EPSILON ((double)2.22044604925031308085e-16L)
105 #endif
106 #ifndef LDBL_EPSILON
107 #define LDBL_EPSILON (1.08420217248550443401e-19L)
108 #endif
109 
110 #ifdef MRB_USE_FLOAT32
111 #define MRB_FLOAT_EPSILON FLT_EPSILON
112 #else
113 #define MRB_FLOAT_EPSILON DBL_EPSILON
114 #endif
115 #endif
116 
117 /**
118  * MRuby C API entry point
119  */
121 
123 
124 /**
125  * \class mrb_aspec
126  *
127  * Specifies the number of arguments a function takes
128  *
129  * Example: `MRB_ARGS_REQ(2) | MRB_ARGS_OPT(1)` for a method that expects 2..3 arguments
130  */
132 
133 struct mrb_irep;
134 struct mrb_state;
135 
136 /**
137  * Function pointer type of custom allocator used in @see mrb_open_allocf.
138  *
139  * The function pointing it must behave similarly as realloc except:
140  * - If ptr is NULL it must allocate new space.
141  * - If s is NULL, ptr must be freed.
142  *
143  * See @see mrb_default_allocf for the default implementation.
144  */
145 typedef void* (*mrb_allocf) (struct mrb_state *mrb, void*, size_t, void *ud);
146 
147 #ifndef MRB_FIXED_STATE_ATEXIT_STACK_SIZE
148 #define MRB_FIXED_STATE_ATEXIT_STACK_SIZE 5
149 #endif
150 
151 typedef struct {
155  const struct RProc *proc;
157  const mrb_code *pc; /* current address on iseq of this proc */
158  union {
159  struct REnv *env;
161  } u;
162 } mrb_callinfo;
163 
171 };
172 
173 struct mrb_context {
174  struct mrb_context *prev;
175 
176  mrb_value *stbase, *stend; /* stack of virtual machine */
177 
180 
181  enum mrb_fiber_state status : 4;
183  struct RFiber *fib;
184 };
185 
186 #ifdef MRB_METHOD_CACHE_SIZE
187 # undef MRB_NO_METHOD_CACHE
188 #else
189 /* default method cache size: 256 */
190 /* cache size needs to be power of 2 */
191 # define MRB_METHOD_CACHE_SIZE (1<<8)
192 #endif
193 
194 /**
195  * Function pointer type for a function callable by mruby.
196  *
197  * The arguments to the function are stored on the mrb_state. To get them see mrb_get_args
198  *
199  * @param mrb The mruby state
200  * @param self The self object
201  * @return [mrb_value] The function's return value
202  */
203 typedef mrb_value (*mrb_func_t)(struct mrb_state *mrb, mrb_value self);
204 
205 #ifndef MRB_USE_METHOD_T_STRUCT
207 #else
208 typedef struct {
209  uint8_t flags;
210  union {
211  struct RProc *proc;
213  };
214 } mrb_method_t;
215 #endif
216 
217 #ifndef MRB_NO_METHOD_CACHE
219  struct RClass *c, *c0;
222 };
223 #endif
224 
225 struct mrb_jmpbuf;
226 
227 typedef void (*mrb_atexit_func)(struct mrb_state*);
228 
229 typedef struct mrb_state {
230  struct mrb_jmpbuf *jmp;
231 
232  mrb_allocf allocf; /* memory allocation function */
233  void *allocf_ud; /* auxiliary data of allocf */
234 
235  struct mrb_context *c;
237  struct iv_tbl *globals; /* global variable table */
238 
239  struct RObject *exc; /* exception */
240 
241  struct RObject *top_self;
242  struct RClass *object_class; /* Object class */
250 
251 #ifndef MRB_NO_FLOAT
253 #endif
257  struct RClass *nil_class;
260 
262 
263 #ifndef MRB_NO_METHOD_CACHE
265 #endif
266 
268  struct symbol_name *symtbl; /* symbol table */
270  size_t symcapa;
271 #ifndef MRB_USE_ALL_SYMBOLS
272  char symbuf[8]; /* buffer for small symbol names */
273 #endif
274 
275 #ifdef MRB_USE_DEBUG_HOOK
276  void (*code_fetch_hook)(struct mrb_state* mrb, const struct mrb_irep *irep, const mrb_code *pc, mrb_value *regs);
277  void (*debug_op_hook)(struct mrb_state* mrb, const struct mrb_irep *irep, const mrb_code *pc, mrb_value *regs);
278 #endif
279 
280 #ifdef MRB_BYTECODE_DECODE_OPTION
281  mrb_code (*bytecode_decoder)(struct mrb_state* mrb, mrb_code code);
282 #endif
283 
286  struct RObject *nomem_err; /* pre-allocated NoMemoryError */
287  struct RObject *stack_err; /* pre-allocated SysStackError */
288 #ifdef MRB_GC_FIXED_ARENA
289  struct RObject *arena_err; /* pre-allocated arena overflow error */
290 #endif
291 
292  void *ud; /* auxiliary data */
293 
294 #ifdef MRB_FIXED_STATE_ATEXIT_STACK
296 #else
298 #endif
301 
302 /**
303  * Defines a new class.
304  *
305  * If you're creating a gem it may look something like this:
306  *
307  * !!!c
308  * void mrb_example_gem_init(mrb_state* mrb) {
309  * struct RClass *example_class;
310  * example_class = mrb_define_class(mrb, "Example_Class", mrb->object_class);
311  * }
312  *
313  * void mrb_example_gem_final(mrb_state* mrb) {
314  * //free(TheAnimals);
315  * }
316  *
317  * @param mrb The current mruby state.
318  * @param name The name of the defined class.
319  * @param super The new class parent.
320  * @return [struct RClass *] Reference to the newly defined class.
321  * @see mrb_define_class_under
322  */
323 MRB_API struct RClass *mrb_define_class(mrb_state *mrb, const char *name, struct RClass *super);
325 
326 /**
327  * Defines a new module.
328  *
329  * @param mrb The current mruby state.
330  * @param name The name of the module.
331  * @return [struct RClass *] Reference to the newly defined module.
332  */
333 MRB_API struct RClass *mrb_define_module(mrb_state *mrb, const char *name);
335 
338 
339 /**
340  * Include a module in another class or module.
341  * Equivalent to:
342  *
343  * module B
344  * include A
345  * end
346  * @param mrb The current mruby state.
347  * @param cla A reference to module or a class.
348  * @param included A reference to the module to be included.
349  */
350 MRB_API void mrb_include_module(mrb_state *mrb, struct RClass *cla, struct RClass *included);
351 
352 /**
353  * Prepends a module in another class or module.
354  *
355  * Equivalent to:
356  * module B
357  * prepend A
358  * end
359  * @param mrb The current mruby state.
360  * @param cla A reference to module or a class.
361  * @param prepended A reference to the module to be prepended.
362  */
363 MRB_API void mrb_prepend_module(mrb_state *mrb, struct RClass *cla, struct RClass *prepended);
364 
365 /**
366  * Defines a global function in ruby.
367  *
368  * If you're creating a gem it may look something like this
369  *
370  * Example:
371  *
372  * mrb_value example_method(mrb_state* mrb, mrb_value self)
373  * {
374  * puts("Executing example command!");
375  * return self;
376  * }
377  *
378  * void mrb_example_gem_init(mrb_state* mrb)
379  * {
380  * mrb_define_method(mrb, mrb->kernel_module, "example_method", example_method, MRB_ARGS_NONE());
381  * }
382  *
383  * @param mrb The MRuby state reference.
384  * @param cla The class pointer where the method will be defined.
385  * @param name The name of the method being defined.
386  * @param func The function pointer to the method definition.
387  * @param aspec The method parameters declaration.
388  */
389 MRB_API void mrb_define_method(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t func, mrb_aspec aspec);
391 
392 /**
393  * Defines a class method.
394  *
395  * Example:
396  *
397  * # Ruby style
398  * class Foo
399  * def Foo.bar
400  * end
401  * end
402  * // C style
403  * mrb_value bar_method(mrb_state* mrb, mrb_value self){
404  * return mrb_nil_value();
405  * }
406  * void mrb_example_gem_init(mrb_state* mrb){
407  * struct RClass *foo;
408  * foo = mrb_define_class(mrb, "Foo", mrb->object_class);
409  * mrb_define_class_method(mrb, foo, "bar", bar_method, MRB_ARGS_NONE());
410  * }
411  * @param mrb The MRuby state reference.
412  * @param cla The class where the class method will be defined.
413  * @param name The name of the class method being defined.
414  * @param fun The function pointer to the class method definition.
415  * @param aspec The method parameters declaration.
416  */
417 MRB_API void mrb_define_class_method(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t fun, mrb_aspec aspec);
419 
420 /**
421  * Defines a singleton method
422  *
423  * @see mrb_define_class_method
424  */
425 MRB_API void mrb_define_singleton_method(mrb_state *mrb, struct RObject *cla, const char *name, mrb_func_t fun, mrb_aspec aspec);
427 
428 /**
429  * Defines a module function.
430  *
431  * Example:
432  *
433  * # Ruby style
434  * module Foo
435  * def Foo.bar
436  * end
437  * end
438  * // C style
439  * mrb_value bar_method(mrb_state* mrb, mrb_value self){
440  * return mrb_nil_value();
441  * }
442  * void mrb_example_gem_init(mrb_state* mrb){
443  * struct RClass *foo;
444  * foo = mrb_define_module(mrb, "Foo");
445  * mrb_define_module_function(mrb, foo, "bar", bar_method, MRB_ARGS_NONE());
446  * }
447  * @param mrb The MRuby state reference.
448  * @param cla The module where the module function will be defined.
449  * @param name The name of the module function being defined.
450  * @param fun The function pointer to the module function definition.
451  * @param aspec The method parameters declaration.
452  */
453 MRB_API void mrb_define_module_function(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t fun, mrb_aspec aspec);
455 
456 /**
457  * Defines a constant.
458  *
459  * Example:
460  *
461  * # Ruby style
462  * class ExampleClass
463  * AGE = 22
464  * end
465  * // C style
466  * #include <stdio.h>
467  * #include <mruby.h>
468  *
469  * void
470  * mrb_example_gem_init(mrb_state* mrb){
471  * mrb_define_const(mrb, mrb->kernel_module, "AGE", mrb_fixnum_value(22));
472  * }
473  *
474  * mrb_value
475  * mrb_example_gem_final(mrb_state* mrb){
476  * }
477  * @param mrb The MRuby state reference.
478  * @param cla A class or module the constant is defined in.
479  * @param name The name of the constant being defined.
480  * @param val The value for the constant.
481  */
482 MRB_API void mrb_define_const(mrb_state* mrb, struct RClass* cla, const char *name, mrb_value val);
484 
485 /**
486  * Undefines a method.
487  *
488  * Example:
489  *
490  * # Ruby style
491  *
492  * class ExampleClassA
493  * def example_method
494  * "example"
495  * end
496  * end
497  * ExampleClassA.new.example_method # => example
498  *
499  * class ExampleClassB < ExampleClassA
500  * undef_method :example_method
501  * end
502  *
503  * ExampleClassB.new.example_method # => undefined method 'example_method' for ExampleClassB (NoMethodError)
504  *
505  * // C style
506  * #include <stdio.h>
507  * #include <mruby.h>
508  *
509  * mrb_value
510  * mrb_example_method(mrb_state *mrb){
511  * return mrb_str_new_lit(mrb, "example");
512  * }
513  *
514  * void
515  * mrb_example_gem_init(mrb_state* mrb){
516  * struct RClass *example_class_a;
517  * struct RClass *example_class_b;
518  * struct RClass *example_class_c;
519  *
520  * example_class_a = mrb_define_class(mrb, "ExampleClassA", mrb->object_class);
521  * mrb_define_method(mrb, example_class_a, "example_method", mrb_example_method, MRB_ARGS_NONE());
522  * example_class_b = mrb_define_class(mrb, "ExampleClassB", example_class_a);
523  * example_class_c = mrb_define_class(mrb, "ExampleClassC", example_class_b);
524  * mrb_undef_method(mrb, example_class_c, "example_method");
525  * }
526  *
527  * mrb_example_gem_final(mrb_state* mrb){
528  * }
529  * @param mrb The mruby state reference.
530  * @param cla The class the method will be undefined from.
531  * @param name The name of the method to be undefined.
532  */
533 MRB_API void mrb_undef_method(mrb_state *mrb, struct RClass *cla, const char *name);
535 
536 /**
537  * Undefine a class method.
538  * Example:
539  *
540  * # Ruby style
541  * class ExampleClass
542  * def self.example_method
543  * "example"
544  * end
545  * end
546  *
547  * ExampleClass.example_method
548  *
549  * // C style
550  * #include <stdio.h>
551  * #include <mruby.h>
552  *
553  * mrb_value
554  * mrb_example_method(mrb_state *mrb){
555  * return mrb_str_new_lit(mrb, "example");
556  * }
557  *
558  * void
559  * mrb_example_gem_init(mrb_state* mrb){
560  * struct RClass *example_class;
561  * example_class = mrb_define_class(mrb, "ExampleClass", mrb->object_class);
562  * mrb_define_class_method(mrb, example_class, "example_method", mrb_example_method, MRB_ARGS_NONE());
563  * mrb_undef_class_method(mrb, example_class, "example_method");
564  * }
565  *
566  * void
567  * mrb_example_gem_final(mrb_state* mrb){
568  * }
569  * @param mrb The mruby state reference.
570  * @param cls A class the class method will be undefined from.
571  * @param name The name of the class method to be undefined.
572  */
573 MRB_API void mrb_undef_class_method(mrb_state *mrb, struct RClass *cls, const char *name);
575 
576 /**
577  * Initialize a new object instance of c class.
578  *
579  * Example:
580  *
581  * # Ruby style
582  * class ExampleClass
583  * end
584  *
585  * p ExampleClass # => #<ExampleClass:0x9958588>
586  * // C style
587  * #include <stdio.h>
588  * #include <mruby.h>
589  *
590  * void
591  * mrb_example_gem_init(mrb_state* mrb) {
592  * struct RClass *example_class;
593  * mrb_value obj;
594  * example_class = mrb_define_class(mrb, "ExampleClass", mrb->object_class); # => class ExampleClass; end
595  * obj = mrb_obj_new(mrb, example_class, 0, NULL); # => ExampleClass.new
596  * mrb_p(mrb, obj); // => Kernel#p
597  * }
598  * @param mrb The current mruby state.
599  * @param c Reference to the class of the new object.
600  * @param argc Number of arguments in argv
601  * @param argv Array of mrb_value to initialize the object
602  * @return [mrb_value] The newly initialized object
603  */
605 
606 /** @see mrb_obj_new */
608 {
609  return mrb_obj_new(mrb,c,argc,argv);
610 }
611 
612 /**
613  * Creates a new instance of Class, Class.
614  *
615  * Example:
616  *
617  * void
618  * mrb_example_gem_init(mrb_state* mrb) {
619  * struct RClass *example_class;
620  *
621  * mrb_value obj;
622  * example_class = mrb_class_new(mrb, mrb->object_class);
623  * obj = mrb_obj_new(mrb, example_class, 0, NULL); // => #<#<Class:0x9a945b8>:0x9a94588>
624  * mrb_p(mrb, obj); // => Kernel#p
625  * }
626  *
627  * @param mrb The current mruby state.
628  * @param super The super class or parent.
629  * @return [struct RClass *] Reference to the new class.
630  */
631 MRB_API struct RClass * mrb_class_new(mrb_state *mrb, struct RClass *super);
632 
633 /**
634  * Creates a new module, Module.
635  *
636  * Example:
637  * void
638  * mrb_example_gem_init(mrb_state* mrb) {
639  * struct RClass *example_module;
640  *
641  * example_module = mrb_module_new(mrb);
642  * }
643  *
644  * @param mrb The current mruby state.
645  * @return [struct RClass *] Reference to the new module.
646  */
647 MRB_API struct RClass * mrb_module_new(mrb_state *mrb);
648 
649 /**
650  * Returns an mrb_bool. True if class was defined, and false if the class was not defined.
651  *
652  * Example:
653  * void
654  * mrb_example_gem_init(mrb_state* mrb) {
655  * struct RClass *example_class;
656  * mrb_bool cd;
657  *
658  * example_class = mrb_define_class(mrb, "ExampleClass", mrb->object_class);
659  * cd = mrb_class_defined(mrb, "ExampleClass");
660  *
661  * // If mrb_class_defined returns 1 then puts "True"
662  * // If mrb_class_defined returns 0 then puts "False"
663  * if (cd == 1){
664  * puts("True");
665  * }
666  * else {
667  * puts("False");
668  * }
669  * }
670  *
671  * @param mrb The current mruby state.
672  * @param name A string representing the name of the class.
673  * @return [mrb_bool] A boolean value.
674  */
675 MRB_API mrb_bool mrb_class_defined(mrb_state *mrb, const char *name);
677 
678 /**
679  * Gets a class.
680  * @param mrb The current mruby state.
681  * @param name The name of the class.
682  * @return [struct RClass *] A reference to the class.
683 */
684 MRB_API struct RClass* mrb_class_get(mrb_state *mrb, const char *name);
686 
687 /**
688  * Gets a exception class.
689  * @param mrb The current mruby state.
690  * @param name The name of the class.
691  * @return [struct RClass *] A reference to the class.
692 */
694 #define mrb_exc_get(mrb, name) mrb_exc_get_id(mrb, mrb_intern_cstr(mrb, name))
695 
696 /**
697  * Returns an mrb_bool. True if inner class was defined, and false if the inner class was not defined.
698  *
699  * Example:
700  * void
701  * mrb_example_gem_init(mrb_state* mrb) {
702  * struct RClass *example_outer, *example_inner;
703  * mrb_bool cd;
704  *
705  * example_outer = mrb_define_module(mrb, "ExampleOuter");
706  *
707  * example_inner = mrb_define_class_under(mrb, example_outer, "ExampleInner", mrb->object_class);
708  * cd = mrb_class_defined_under(mrb, example_outer, "ExampleInner");
709  *
710  * // If mrb_class_defined_under returns 1 then puts "True"
711  * // If mrb_class_defined_under returns 0 then puts "False"
712  * if (cd == 1){
713  * puts("True");
714  * }
715  * else {
716  * puts("False");
717  * }
718  * }
719  *
720  * @param mrb The current mruby state.
721  * @param outer The name of the outer class.
722  * @param name A string representing the name of the inner class.
723  * @return [mrb_bool] A boolean value.
724  */
725 MRB_API mrb_bool mrb_class_defined_under(mrb_state *mrb, struct RClass *outer, const char *name);
727 
728 /**
729  * Gets a child class.
730  * @param mrb The current mruby state.
731  * @param outer The name of the parent class.
732  * @param name The name of the class.
733  * @return [struct RClass *] A reference to the class.
734 */
735 MRB_API struct RClass * mrb_class_get_under(mrb_state *mrb, struct RClass *outer, const char *name);
736 MRB_API struct RClass * mrb_class_get_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name);
737 
738 /**
739  * Gets a module.
740  * @param mrb The current mruby state.
741  * @param name The name of the module.
742  * @return [struct RClass *] A reference to the module.
743 */
744 MRB_API struct RClass * mrb_module_get(mrb_state *mrb, const char *name);
746 
747 /**
748  * Gets a module defined under another module.
749  * @param mrb The current mruby state.
750  * @param outer The name of the outer module.
751  * @param name The name of the module.
752  * @return [struct RClass *] A reference to the module.
753 */
754 MRB_API struct RClass * mrb_module_get_under(mrb_state *mrb, struct RClass *outer, const char *name);
755 MRB_API struct RClass * mrb_module_get_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name);
756 
757 /* a function to raise NotImplementedError with current method name */
759 /* a function to be replacement of unimplemented method */
761 
762 /**
763  * Duplicate an object.
764  *
765  * Equivalent to:
766  * Object#dup
767  * @param mrb The current mruby state.
768  * @param obj Object to be duplicate.
769  * @return [mrb_value] The newly duplicated object.
770  */
772 
773 /**
774  * Returns true if obj responds to the given method. If the method was defined for that
775  * class it returns true, it returns false otherwise.
776  *
777  * Example:
778  * # Ruby style
779  * class ExampleClass
780  * def example_method
781  * end
782  * end
783  *
784  * ExampleClass.new.respond_to?(:example_method) # => true
785  *
786  * // C style
787  * void
788  * mrb_example_gem_init(mrb_state* mrb) {
789  * struct RClass *example_class;
790  * mrb_sym mid;
791  * mrb_bool obj_resp;
792  *
793  * example_class = mrb_define_class(mrb, "ExampleClass", mrb->object_class);
794  * mrb_define_method(mrb, example_class, "example_method", exampleMethod, MRB_ARGS_NONE());
795  * mid = mrb_intern_str(mrb, mrb_str_new_lit(mrb, "example_method" ));
796  * obj_resp = mrb_obj_respond_to(mrb, example_class, mid); // => 1(true in Ruby world)
797  *
798  * // If mrb_obj_respond_to returns 1 then puts "True"
799  * // If mrb_obj_respond_to returns 0 then puts "False"
800  * if (obj_resp == 1) {
801  * puts("True");
802  * }
803  * else if (obj_resp == 0) {
804  * puts("False");
805  * }
806  * }
807  *
808  * @param mrb The current mruby state.
809  * @param c A reference to a class.
810  * @param mid A symbol referencing a method id.
811  * @return [mrb_bool] A boolean value.
812  */
814 
815 /**
816  * Defines a new class under a given module
817  *
818  * @param mrb The current mruby state.
819  * @param outer Reference to the module under which the new class will be defined
820  * @param name The name of the defined class
821  * @param super The new class parent
822  * @return [struct RClass *] Reference to the newly defined class
823  * @see mrb_define_class
824  */
825 MRB_API struct RClass* mrb_define_class_under(mrb_state *mrb, struct RClass *outer, const char *name, struct RClass *super);
826 MRB_API struct RClass* mrb_define_class_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name, struct RClass *super);
827 
828 MRB_API struct RClass* mrb_define_module_under(mrb_state *mrb, struct RClass *outer, const char *name);
830 
831 /**
832  * Function requires n arguments.
833  *
834  * @param n
835  * The number of required arguments.
836  */
837 #define MRB_ARGS_REQ(n) ((mrb_aspec)((n)&0x1f) << 18)
838 
839 /**
840  * Function takes n optional arguments
841  *
842  * @param n
843  * The number of optional arguments.
844  */
845 #define MRB_ARGS_OPT(n) ((mrb_aspec)((n)&0x1f) << 13)
846 
847 /**
848  * Function takes n1 mandatory arguments and n2 optional arguments
849  *
850  * @param n1
851  * The number of required arguments.
852  * @param n2
853  * The number of optional arguments.
854  */
855 #define MRB_ARGS_ARG(n1,n2) (MRB_ARGS_REQ(n1)|MRB_ARGS_OPT(n2))
856 
857 /** rest argument */
858 #define MRB_ARGS_REST() ((mrb_aspec)(1 << 12))
859 
860 /** required arguments after rest */
861 #define MRB_ARGS_POST(n) ((mrb_aspec)((n)&0x1f) << 7)
862 
863 /** keyword arguments (n of keys, kdict) */
864 #define MRB_ARGS_KEY(n1,n2) ((mrb_aspec)((((n1)&0x1f) << 2) | ((n2)?(1<<1):0)))
865 
866 /**
867  * Function takes a block argument
868  */
869 #define MRB_ARGS_BLOCK() ((mrb_aspec)1)
870 
871 /**
872  * Function accepts any number of arguments
873  */
874 #define MRB_ARGS_ANY() MRB_ARGS_REST()
875 
876 /**
877  * Function accepts no arguments
878  */
879 #define MRB_ARGS_NONE() ((mrb_aspec)0)
880 
881 /**
882  * Format specifiers for {mrb_get_args} function
883  *
884  * Must be a C string composed of the following format specifiers:
885  *
886  * | char | Ruby type | C types | Notes |
887  * |:----:|----------------|-------------------|----------------------------------------------------|
888  * | `o` | {Object} | {mrb_value} | Could be used to retrieve any type of argument |
889  * | `C` | {Class}/{Module} | {mrb_value} | |
890  * | `S` | {String} | {mrb_value} | when `!` follows, the value may be `nil` |
891  * | `A` | {Array} | {mrb_value} | when `!` follows, the value may be `nil` |
892  * | `H` | {Hash} | {mrb_value} | when `!` follows, the value may be `nil` |
893  * | `s` | {String} | const char *, {mrb_int} | Receive two arguments; `s!` gives (`NULL`,`0`) for `nil` |
894  * | `z` | {String} | const char * | `NULL` terminated string; `z!` gives `NULL` for `nil` |
895  * | `a` | {Array} | const {mrb_value} *, {mrb_int} | Receive two arguments; `a!` gives (`NULL`,`0`) for `nil` |
896  * | `f` | {Integer}/{Float} | {mrb_float} | |
897  * | `i` | {Integer}/{Float} | {mrb_int} | |
898  * | `b` | boolean | {mrb_bool} | |
899  * | `n` | {String}/{Symbol} | {mrb_sym} | |
900  * | `d` | data | void *, {mrb_data_type} const | 2nd argument will be used to check data type so it won't be modified; when `!` follows, the value may be `nil` |
901  * | `I` | inline struct | void * | |
902  * | `&` | block | {mrb_value} | &! raises exception if no block given. |
903  * | `*` | rest arguments | const {mrb_value} *, {mrb_int} | Receive the rest of arguments as an array; `*!` avoid copy of the stack. |
904  * | <code>\|</code> | optional | | After this spec following specs would be optional. |
905  * | `?` | optional given | {mrb_bool} | `TRUE` if preceding argument is given. Used to check optional argument is given. |
906  * | `:` | keyword args | {mrb_kwargs} const | Get keyword arguments. @see mrb_kwargs |
907  *
908  * @see mrb_get_args
909  */
910 typedef const char *mrb_args_format;
911 
912 /**
913  * Get keyword arguments by `mrb_get_args()` with `:` specifier.
914  *
915  * `mrb_kwargs::num` indicates that the number of keyword values.
916  *
917  * `mrb_kwargs::values` is an object array, and the keyword argument corresponding to the string array is assigned.
918  * Note that `undef` is assigned if there is no keyword argument corresponding to `mrb_kwargs::optional`.
919  *
920  * `mrb_kwargs::table` accepts a string array.
921  *
922  * `mrb_kwargs::required` indicates that the specified number of keywords starting from the beginning of the string array are required.
923  *
924  * `mrb_kwargs::rest` is the remaining keyword argument that can be accepted as `**rest` in Ruby.
925  * If `NULL` is specified, `ArgumentError` is raised when there is an undefined keyword.
926  *
927  * Examples:
928  *
929  * // def method(a: 1, b: 2)
930  *
931  * uint32_t kw_num = 2;
932  * const char *kw_names[kw_num] = { "a", "b" };
933  * uint32_t kw_required = 0;
934  * mrb_value kw_values[kw_num];
935  * const mrb_kwargs kwargs = { kw_num, kw_required, kw_names, kw_values, NULL };
936  *
937  * mrb_get_args(mrb, ":", &kwargs);
938  * if (mrb_undef_p(kw_values[0])) { kw_values[0] = mrb_fixnum_value(1); }
939  * if (mrb_undef_p(kw_values[1])) { kw_values[1] = mrb_fixnum_value(2); }
940  *
941  *
942  * // def method(str, x:, y: 2, z: "default string", **opts)
943  *
944  * mrb_value str, kw_rest;
945  * uint32_t kw_num = 3;
946  * const mrb_sym kw_names[kw_num] = { MRB_SYM(x), MRB_SYM(y), MRB_SYM(z) };
947  * uint32_t kw_required = 1;
948  * mrb_value kw_values[kw_num];
949  * const mrb_kwargs kwargs = { kw_num, kw_required, kw_names, kw_values, &kw_rest };
950  *
951  * mrb_get_args(mrb, "S:", &str, &kwargs);
952  * // or: mrb_get_args(mrb, ":S", &kwargs, &str);
953  * if (mrb_undef_p(kw_values[1])) { kw_values[1] = mrb_fixnum_value(2); }
954  * if (mrb_undef_p(kw_values[2])) { kw_values[2] = mrb_str_new_cstr(mrb, "default string"); }
955  */
956 typedef struct mrb_kwargs mrb_kwargs;
957 
959 {
960  uint32_t num; /* number of keyword arguments */
961  uint32_t required; /* number of required keyword arguments */
962  const mrb_sym *table; /* C array of symbols for keyword names */
963  mrb_value *values; /* keyword argument values */
964  mrb_value *rest; /* keyword rest (dict) */
965 };
966 
967 /**
968  * Retrieve arguments from mrb_state.
969  *
970  * @param mrb The current MRuby state.
971  * @param format is a list of format specifiers
972  * @param ... The passing variadic arguments must be a pointer of retrieving type.
973  * @return the number of arguments retrieved.
974  * @see mrb_args_format
975  * @see mrb_kwargs
976  */
978 
980 mrb_get_mid(mrb_state *mrb) /* get method symbol */
981 {
982  return mrb->c->ci->mid;
983 }
984 
985 /**
986  * Retrieve number of arguments from mrb_state.
987  *
988  * Correctly handles *splat arguments.
989  */
991 
992 /**
993  * Retrieve an array of arguments from mrb_state.
994  *
995  * Correctly handles *splat arguments.
996  */
998 
999 /**
1000  * Retrieve the first and only argument from mrb_state.
1001  * Raises ArgumentError unless the number of arguments is exactly one.
1002  *
1003  * Correctly handles *splat arguments.
1004  */
1006 
1007 /* `strlen` for character string literals (use with caution or `strlen` instead)
1008  Adjacent string literals are concatenated in C/C++ in translation phase 6.
1009  If `lit` is not one, the compiler will report a syntax error:
1010  MSVC: "error C2143: syntax error : missing ')' before 'string'"
1011  GCC: "error: expected ')' before string constant"
1012 */
1013 #define mrb_strlen_lit(lit) (sizeof(lit "") - 1)
1014 
1015 /**
1016  * Call existing ruby functions.
1017  *
1018  * Example:
1019  *
1020  * #include <stdio.h>
1021  * #include <mruby.h>
1022  * #include "mruby/compile.h"
1023  *
1024  * int
1025  * main()
1026  * {
1027  * mrb_int i = 99;
1028  * mrb_state *mrb = mrb_open();
1029  *
1030  * if (!mrb) { }
1031  * FILE *fp = fopen("test.rb","r");
1032  * mrb_value obj = mrb_load_file(mrb,fp);
1033  * mrb_funcall(mrb, obj, "method_name", 1, mrb_fixnum_value(i));
1034  * mrb_funcall_id(mrb, obj, MRB_SYM(method_name), 1, mrb_fixnum_value(i));
1035  * fclose(fp);
1036  * mrb_close(mrb);
1037  * }
1038  *
1039  * @param mrb The current mruby state.
1040  * @param val A reference to an mruby value.
1041  * @param name The name of the method.
1042  * @param argc The number of arguments the method has.
1043  * @param ... Variadic values(not type safe!).
1044  * @return [mrb_value] mruby function value.
1045  */
1046 MRB_API mrb_value mrb_funcall(mrb_state *mrb, mrb_value val, const char *name, mrb_int argc, ...);
1048 /**
1049  * Call existing ruby functions. This is basically the type safe version of mrb_funcall.
1050  *
1051  * #include <stdio.h>
1052  * #include <mruby.h>
1053  * #include "mruby/compile.h"
1054  * int
1055  * main()
1056  * {
1057  * mrb_state *mrb = mrb_open();
1058  * mrb_value obj = mrb_fixnum_value(1);
1059  *
1060  * if (!mrb) { }
1061  *
1062  * FILE *fp = fopen("test.rb","r");
1063  * mrb_value obj = mrb_load_file(mrb,fp);
1064  * mrb_funcall_argv(mrb, obj, MRB_SYM(method_name), 1, &obj); // Calling ruby function from test.rb.
1065  * fclose(fp);
1066  * mrb_close(mrb);
1067  * }
1068  * @param mrb The current mruby state.
1069  * @param val A reference to an mruby value.
1070  * @param name_sym The symbol representing the method.
1071  * @param argc The number of arguments the method has.
1072  * @param obj Pointer to the object.
1073  * @return [mrb_value] mrb_value mruby function value.
1074  * @see mrb_funcall
1075  */
1077 /**
1078  * Call existing ruby functions with a block.
1079  */
1081 /**
1082  * Create a symbol from C string. But usually it's better to use MRB_SYM,
1083  * MRB_OPSYM, MRB_CVSYM, MRB_IVSYM, MRB_SYM_B, MRB_SYM_Q, MRB_SYM_E macros.
1084  *
1085  * Example:
1086  *
1087  * # Ruby style:
1088  * :pizza # => :pizza
1089  *
1090  * // C style:
1091  * mrb_sym sym1 = mrb_intern_lit(mrb, "pizza"); // => :pizza
1092  * mrb_sym sym2 = MRB_SYM(pizza); // => :pizza
1093  * mrb_sym sym3 = MRB_SYM_Q(pizza); // => :pizza?
1094  *
1095  * @param mrb The current mruby state.
1096  * @param str The string to be symbolized
1097  * @return [mrb_sym] mrb_sym A symbol.
1098  */
1099 MRB_API mrb_sym mrb_intern_cstr(mrb_state *mrb, const char* str);
1100 MRB_API mrb_sym mrb_intern(mrb_state*,const char*,size_t);
1101 MRB_API mrb_sym mrb_intern_static(mrb_state*,const char*,size_t);
1102 #define mrb_intern_lit(mrb, lit) mrb_intern_static(mrb, (lit ""), mrb_strlen_lit(lit))
1104 /* mrb_intern_check series functions returns 0 if the symbol is not defined */
1106 MRB_API mrb_sym mrb_intern_check(mrb_state*,const char*,size_t);
1108 /* mrb_check_intern series functions returns nil if the symbol is not defined */
1109 /* otherwise returns mrb_value */
1111 MRB_API mrb_value mrb_check_intern(mrb_state*,const char*,size_t);
1113 MRB_API const char *mrb_sym_name(mrb_state*,mrb_sym);
1115 MRB_API const char *mrb_sym_dump(mrb_state*,mrb_sym);
1117 #define mrb_sym2name(mrb,sym) mrb_sym_name(mrb,sym)
1118 #define mrb_sym2name_len(mrb,sym,len) mrb_sym_name_len(mrb,sym,len)
1119 #define mrb_sym2str(mrb,sym) mrb_sym_str(mrb,sym)
1120 
1121 MRB_API void *mrb_malloc(mrb_state*, size_t); /* raise RuntimeError if no mem */
1122 MRB_API void *mrb_calloc(mrb_state*, size_t, size_t); /* ditto */
1123 MRB_API void *mrb_realloc(mrb_state*, void*, size_t); /* ditto */
1124 MRB_API void *mrb_realloc_simple(mrb_state*, void*, size_t); /* return NULL if no memory available */
1125 MRB_API void *mrb_malloc_simple(mrb_state*, size_t); /* return NULL if no memory available */
1126 MRB_API struct RBasic *mrb_obj_alloc(mrb_state*, enum mrb_vtype, struct RClass*);
1127 MRB_API void mrb_free(mrb_state*, void*);
1128 
1129 MRB_API mrb_value mrb_str_new(mrb_state *mrb, const char *p, size_t len);
1130 
1131 /**
1132  * Turns a C string into a Ruby string value.
1133  */
1135 MRB_API mrb_value mrb_str_new_static(mrb_state *mrb, const char *p, size_t len);
1136 #define mrb_str_new_lit(mrb, lit) mrb_str_new_static(mrb, (lit), mrb_strlen_lit(lit))
1137 
1139 #define mrb_str_new_frozen(mrb,p,len) mrb_obj_freeze(mrb,mrb_str_new(mrb,p,len))
1140 #define mrb_str_new_cstr_frozen(mrb,p) mrb_obj_freeze(mrb,mrb_str_new_cstr(mrb,p))
1141 #define mrb_str_new_static_frozen(mrb,p,len) mrb_obj_freeze(mrb,mrb_str_new_static(mrb,p,len))
1142 #define mrb_str_new_lit_frozen(mrb,lit) mrb_obj_freeze(mrb,mrb_str_new_lit(mrb,lit))
1143 
1144 #ifdef _WIN32
1145 MRB_API char* mrb_utf8_from_locale(const char *p, int len);
1146 MRB_API char* mrb_locale_from_utf8(const char *p, int len);
1147 #define mrb_locale_free(p) free(p)
1148 #define mrb_utf8_free(p) free(p)
1149 #else
1150 #define mrb_utf8_from_locale(p, l) ((char*)(p))
1151 #define mrb_locale_from_utf8(p, l) ((char*)(p))
1152 #define mrb_locale_free(p)
1153 #define mrb_utf8_free(p)
1154 #endif
1155 
1156 /**
1157  * Creates new mrb_state.
1158  *
1159  * @return
1160  * Pointer to the newly created mrb_state.
1161  */
1162 MRB_API mrb_state* mrb_open(void);
1163 
1164 /**
1165  * Create new mrb_state with custom allocators.
1166  *
1167  * @param f
1168  * Reference to the allocation function.
1169  * @param ud
1170  * User data will be passed to custom allocator f.
1171  * If user data isn't required just pass NULL.
1172  * @return
1173  * Pointer to the newly created mrb_state.
1174  */
1176 
1177 /**
1178  * Create new mrb_state with just the MRuby core
1179  *
1180  * @param f
1181  * Reference to the allocation function.
1182  * Use mrb_default_allocf for the default
1183  * @param ud
1184  * User data will be passed to custom allocator f.
1185  * If user data isn't required just pass NULL.
1186  * @return
1187  * Pointer to the newly created mrb_state.
1188  */
1190 
1191 /**
1192  * Closes and frees a mrb_state.
1193  *
1194  * @param mrb
1195  * Pointer to the mrb_state to be closed.
1196  */
1197 MRB_API void mrb_close(mrb_state *mrb);
1198 
1199 /**
1200  * The default allocation function.
1201  *
1202  * @see mrb_allocf
1203  */
1204 MRB_API void* mrb_default_allocf(mrb_state*, void*, size_t, void*);
1205 
1207 MRB_API mrb_value mrb_top_run(mrb_state *mrb, const struct RProc *proc, mrb_value self, mrb_int stack_keep);
1208 MRB_API mrb_value mrb_vm_run(mrb_state *mrb, const struct RProc *proc, mrb_value self, mrb_int stack_keep);
1209 MRB_API mrb_value mrb_vm_exec(mrb_state *mrb, const struct RProc *proc, const mrb_code *iseq);
1210 /* compatibility macros */
1211 #define mrb_toplevel_run_keep(m,p,k) mrb_top_run((m),(p),mrb_top_self(m),(k))
1212 #define mrb_toplevel_run(m,p) mrb_toplevel_run_keep((m),(p),0)
1213 #define mrb_context_run(m,p,s,k) mrb_vm_run((m),(p),(s),(k))
1214 
1218 
1224 #ifndef MRB_NO_FLOAT
1226 #endif
1229 /* mrb_cmp(mrb, obj1, obj2): 1:0:-1; -2 for error */
1231 
1232 MRB_INLINE int
1234 {
1235  return mrb->gc.arena_idx;
1236 }
1237 
1238 MRB_INLINE void
1240 {
1241  mrb->gc.arena_idx = idx;
1242 }
1243 
1247 MRB_API void mrb_gc_mark(mrb_state*,struct RBasic*);
1248 #define mrb_gc_mark_value(mrb,val) do {\
1249  if (!mrb_immediate_p(val)) mrb_gc_mark((mrb), mrb_basic_ptr(val)); \
1250 } while (0)
1251 MRB_API void mrb_field_write_barrier(mrb_state *, struct RBasic*, struct RBasic*);
1252 #define mrb_field_write_barrier_value(mrb, obj, val) do{\
1253  if (!mrb_immediate_p(val)) mrb_field_write_barrier((mrb), (obj), mrb_basic_ptr(val)); \
1254 } while (0)
1255 MRB_API void mrb_write_barrier(mrb_state *, struct RBasic*);
1256 
1258 #define mrb_convert_type(mrb, val, type, tname, method) mrb_type_convert(mrb, val, type, mrb_intern_lit(mrb, method))
1260 #define mrb_check_convert_type(mrb, val, type, tname, method) mrb_type_convert_check(mrb, val, type, mrb_intern_lit(mrb, method))
1261 
1263 MRB_API const char * mrb_obj_classname(mrb_state *mrb, mrb_value obj);
1264 MRB_API struct RClass* mrb_obj_class(mrb_state *mrb, mrb_value obj);
1269 
1270 #ifndef ISPRINT
1271 #define ISASCII(c) ((unsigned)(c) <= 0x7f)
1272 #define ISPRINT(c) (((unsigned)(c) - 0x20) < 0x5f)
1273 #define ISSPACE(c) ((c) == ' ' || (unsigned)(c) - '\t' < 5)
1274 #define ISUPPER(c) (((unsigned)(c) - 'A') < 26)
1275 #define ISLOWER(c) (((unsigned)(c) - 'a') < 26)
1276 #define ISALPHA(c) ((((unsigned)(c) | 0x20) - 'a') < 26)
1277 #define ISDIGIT(c) (((unsigned)(c) - '0') < 10)
1278 #define ISXDIGIT(c) (ISDIGIT(c) || ((unsigned)(c) | 0x20) - 'a' < 6)
1279 #define ISALNUM(c) (ISALPHA(c) || ISDIGIT(c))
1280 #define ISBLANK(c) ((c) == ' ' || (c) == '\t')
1281 #define ISCNTRL(c) ((unsigned)(c) < 0x20 || (c) == 0x7f)
1282 #define TOUPPER(c) (ISLOWER(c) ? ((c) & 0x5f) : (c))
1283 #define TOLOWER(c) (ISUPPER(c) ? ((c) | 0x20) : (c))
1284 #endif
1285 
1286 MRB_API mrb_value mrb_exc_new(mrb_state *mrb, struct RClass *c, const char *ptr, size_t len);
1288 
1289 MRB_API mrb_noreturn void mrb_raise(mrb_state *mrb, struct RClass *c, const char *msg);
1290 MRB_API mrb_noreturn void mrb_raisef(mrb_state *mrb, struct RClass *c, const char *fmt, ...);
1291 MRB_API mrb_noreturn void mrb_name_error(mrb_state *mrb, mrb_sym id, const char *fmt, ...);
1292 MRB_API mrb_noreturn void mrb_frozen_error(mrb_state *mrb, void *frozen_obj);
1294 MRB_API void mrb_warn(mrb_state *mrb, const char *fmt, ...);
1295 MRB_API mrb_noreturn void mrb_bug(mrb_state *mrb, const char *fmt, ...);
1297 MRB_API void mrb_print_error(mrb_state *mrb);
1298 /* function for `raisef` formatting */
1299 MRB_API mrb_value mrb_vformat(mrb_state *mrb, const char *format, va_list ap);
1300 
1301 /* macros to get typical exception objects
1302  note:
1303  + those E_* macros requires mrb_state* variable named mrb.
1304  + exception objects obtained from those macros are local to mrb
1305 */
1306 #define MRB_ERROR_SYM(sym) mrb_intern_lit(mrb, #sym)
1307 #define E_RUNTIME_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(RuntimeError))
1308 #define E_TYPE_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(TypeError))
1309 #define E_ZERODIV_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(ZeroDivisionError))
1310 #define E_ARGUMENT_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(ArgumentError))
1311 #define E_INDEX_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(IndexError))
1312 #define E_RANGE_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(RangeError))
1313 #define E_NAME_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(NameError))
1314 #define E_NOMETHOD_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(NoMethodError))
1315 #define E_SCRIPT_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(ScriptError))
1316 #define E_SYNTAX_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(SyntaxError))
1317 #define E_LOCALJUMP_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(LocalJumpError))
1318 #define E_REGEXP_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(RegexpError))
1319 #define E_FROZEN_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(FrozenError))
1320 #define E_NOTIMP_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(NotImplementedError))
1321 #define E_KEY_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(KeyError))
1322 #ifndef MRB_NO_FLOAT
1323 # define E_FLOATDOMAIN_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(FloatDomainError))
1324 #endif
1325 
1329 
1330 /* continue execution to the proc */
1331 /* this function should always be called as the last function of a method */
1332 /* e.g. return mrb_yield_cont(mrb, proc, self, argc, argv); */
1334 
1335 /* mrb_gc_protect() leaves the object in the arena */
1336 MRB_API void mrb_gc_protect(mrb_state *mrb, mrb_value obj);
1337 /* mrb_gc_register() keeps the object from GC. */
1338 MRB_API void mrb_gc_register(mrb_state *mrb, mrb_value obj);
1339 /* mrb_gc_unregister() removes the object from GC root. */
1341 
1343 #define mrb_int(mrb, val) mrb_integer(mrb_to_int(mrb, val))
1344 /* string type checking (contrary to the name, it doesn't convert) */
1347 
1349 {
1350  if (mrb_frozen_p((struct RBasic*)o)) mrb_frozen_error(mrb, o);
1351 }
1352 
1353 MRB_API void mrb_define_alias(mrb_state *mrb, struct RClass *c, const char *a, const char *b);
1355 MRB_API const char *mrb_class_name(mrb_state *mrb, struct RClass* klass);
1356 MRB_API void mrb_define_global_const(mrb_state *mrb, const char *name, mrb_value val);
1357 
1359 
1363 
1364 
1365 /**
1366  * Resume a Fiber
1367  *
1368  * Implemented in mruby-fiber
1369  */
1371 
1372 /**
1373  * Yield a Fiber
1374  *
1375  * Implemented in mruby-fiber
1376  */
1378 
1379 /**
1380  * Check if a Fiber is alive
1381  *
1382  * Implemented in mruby-fiber
1383  */
1385 
1386 /**
1387  * FiberError reference
1388  *
1389  * Implemented in mruby-fiber
1390  */
1391 #define E_FIBER_ERROR mrb_exc_get_id(mrb, MRB_ERROR_SYM(FiberError))
1393 
1394 /* memory pool implementation */
1395 typedef struct mrb_pool mrb_pool;
1397 MRB_API void mrb_pool_close(struct mrb_pool*);
1398 MRB_API void* mrb_pool_alloc(struct mrb_pool*, size_t);
1399 MRB_API void* mrb_pool_realloc(struct mrb_pool*, void*, size_t oldlen, size_t newlen);
1400 MRB_API mrb_bool mrb_pool_can_realloc(struct mrb_pool*, void*, size_t);
1401 /* temporary memory allocation, only effective while GC arena is kept */
1402 MRB_API void* mrb_alloca(mrb_state *mrb, size_t);
1403 
1405 
1408 
1409 MRB_API mrb_value mrb_format(mrb_state *mrb, const char *format, ...);
1410 
1411 #ifdef MRB_PRESYM_SCANNING
1412 # include <mruby/presym/scanning.h>
1413 #endif
1414 
1415 #if 0
1416 /* memcpy and memset does not work with gdb reverse-next on my box */
1417 /* use naive memcpy and memset instead */
1418 #undef memcpy
1419 #undef memset
1420 static void*
1421 mrbmemcpy(void *dst, const void *src, size_t n)
1422 {
1423  char *d = (char*)dst;
1424  const char *s = (const char*)src;
1425  while (n--)
1426  *d++ = *s++;
1427  return d;
1428 }
1429 #define memcpy(a,b,c) mrbmemcpy(a,b,c)
1430 
1431 static void*
1432 mrbmemset(void *s, int c, size_t n)
1433 {
1434  char *t = (char*)s;
1435  while (n--)
1436  *t++ = c;
1437  return s;
1438 }
1439 #define memset(a,b,c) mrbmemset(a,b,c)
1440 #endif
1441 
1443 
1444 #endif /* MRUBY_H */
return _Result< 0 ? -1 :_Result;} #line 1069 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnwprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1091 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, va_list _ArgList) { return _vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1108 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _ArgList) { return _vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1133 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1179 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1196 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __vswprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1212 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf(wchar_t *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1227 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1243 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1264 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1281 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1283 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1312 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1347 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_l(_Format,((void *) 0), _ArgList);} #line 1361 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1380 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1394 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __swprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1414 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1435 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf(wchar_t *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1454 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1474 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "__swprintf_l_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __swprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vswprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __vswprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "swprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swprintf(wchar_t *_Buffer, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vswprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vswprintf(wchar_t *_Buffer, wchar_t const *_Format, va_list _Args);__inline int __cdecl _swprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1511 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1532 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1534 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1562 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1582 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1603 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1623 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1646 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1668 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1711 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1737 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1755 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1774 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1792 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #pragma warning(push) #pragma warning(disable:4141 6054) #pragma warning(pop) #line 1856 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" int __cdecl __stdio_common_vswscanf(unsigned __int64 _Options, wchar_t const *_Buffer, size_t _BufferCount, wchar_t const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vswscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1897 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf(wchar_t const *_Buffer, wchar_t const *_Format, va_list _ArgList) { return _vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1947 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1949 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1976 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1995 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_swscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2015 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "swscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl swscanf(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2034 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2054 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 2077 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2100 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2122 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2143 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) typedef __int64 fpos_t;errno_t __cdecl _get_stream_buffer_pointers(FILE *_Stream, char ***_Base, char ***_Pointer, int **_Count);errno_t __cdecl clearerr_s(FILE *_Stream);errno_t __cdecl fopen_s(FILE **_Stream, char const *_FileName, char const *_Mode);size_t __cdecl fread_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);errno_t __cdecl freopen_s(FILE **_Stream, char const *_FileName, char const *_Mode, FILE *_OldStream);char *__cdecl gets_s(char *_Buffer, rsize_t _Size);errno_t __cdecl tmpfile_s(FILE **_Stream);errno_t __cdecl tmpnam_s(char *_Buffer, rsize_t _Size);#line 145 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl clearerr(FILE *_Stream);int __cdecl fclose(FILE *_Stream);int __cdecl _fcloseall(void);FILE *__cdecl _fdopen(int _FileHandle, char const *_Mode);int __cdecl feof(FILE *_Stream);int __cdecl ferror(FILE *_Stream);int __cdecl fflush(FILE *_Stream);int __cdecl fgetc(FILE *_Stream);int __cdecl _fgetchar(void);int __cdecl fgetpos(FILE *_Stream, fpos_t *_Position);char *__cdecl fgets(char *_Buffer, int _MaxCount, FILE *_Stream);int __cdecl _fileno(FILE *_Stream);int __cdecl _flushall(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "fopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl fopen(char const *_FileName, char const *_Mode);int __cdecl fputc(int _Character, FILE *_Stream);int __cdecl _fputchar(int _Character);int __cdecl fputs(char const *_Buffer, FILE *_Stream);size_t __cdecl fread(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);__declspec(deprecated("This function or variable may be unsafe. Consider using " "freopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl freopen(char const *_FileName, char const *_Mode, FILE *_Stream);FILE *__cdecl _fsopen(char const *_FileName, char const *_Mode, int _ShFlag);int __cdecl fsetpos(FILE *_Stream, fpos_t const *_Position);int __cdecl fseek(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl ftell(FILE *_Stream);__int64 __cdecl _ftelli64(FILE *_Stream);size_t __cdecl fwrite(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl getc(FILE *_Stream);int __cdecl getchar(void);int __cdecl _getmaxstdio(void);int __cdecl _getw(FILE *_Stream);void __cdecl perror(char const *_ErrorMessage);int __cdecl _pclose(FILE *_Stream);FILE *__cdecl _popen(char const *_Command, char const *_Mode);#line 344 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl putc(int _Character, FILE *_Stream);int __cdecl putchar(int _Character);int __cdecl puts(char const *_Buffer);int __cdecl _putw(int _Word, FILE *_Stream);int __cdecl remove(char const *_FileName);int __cdecl rename(char const *_OldFileName, char const *_NewFileName);int __cdecl _unlink(char const *_FileName);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_unlink" ". See online help for details.")) int __cdecl unlink(char const *_FileName);#line 391 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl rewind(FILE *_Stream);int __cdecl _rmtmp(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "setvbuf" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) void __cdecl setbuf(FILE *_Stream, char *_Buffer);int __cdecl _setmaxstdio(int _Maximum);int __cdecl setvbuf(FILE *_Stream, char *_Buffer, int _Mode, size_t _Size);__declspec(allocator) char *__cdecl _tempnam(char const *_DirectoryName, char const *_FilePrefix);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpfile_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl tmpfile(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpnam_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl tmpnam(char *_Buffer);int __cdecl ungetc(int _Character, FILE *_Stream);void __cdecl _lock_file(FILE *_Stream);void __cdecl _unlock_file(FILE *_Stream);int __cdecl _fclose_nolock(FILE *_Stream);int __cdecl _fflush_nolock(FILE *_Stream);int __cdecl _fgetc_nolock(FILE *_Stream);int __cdecl _fputc_nolock(int _Character, FILE *_Stream);size_t __cdecl _fread_nolock(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);size_t __cdecl _fread_nolock_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _fseek_nolock(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64_nolock(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl _ftell_nolock(FILE *_Stream);__int64 __cdecl _ftelli64_nolock(FILE *_Stream);size_t __cdecl _fwrite_nolock(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _getc_nolock(FILE *_Stream);int __cdecl _putc_nolock(int _Character, FILE *_Stream);int __cdecl _ungetc_nolock(int _Character, FILE *_Stream);int *__cdecl __p__commode(void);#line 596 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfprintf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_s(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_p(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vfprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 648 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 662 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_s((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 677 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 693 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 695 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_p((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 710 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);} #line 724 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 738 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf(char const *const _Format, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 751 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 765 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf_s(char const *const _Format, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 780 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 796 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p(char const *const _Format, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 809 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 828 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 846 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl _set_printf_count_output(int _Value);int __cdecl _get_printf_count_output(void);__inline int __cdecl _fprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 871 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 891 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 893 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 948 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 965 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 983 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1002 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1004 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1022 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1039 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfscanf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _Arglist);__inline int __cdecl _vfscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options()), _Stream, _Format, _Locale, _ArgList);} #line 1070 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1084 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Stream, _Format, _Locale, _ArgList);} #line 1101 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1118 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1120 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1134 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf(char const *const _Format, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1147 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1161 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf_s(char const *const _Format, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1176 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1178 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_fscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _fscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1197 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "fscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl fscanf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1215 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1234 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fscanf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1254 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_scanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _scanf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1274 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "scanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl scanf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1291 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scanf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1309 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl scanf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1330 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsprintf(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsnprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, size_t _MaxCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_p(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1399 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1415 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);return _Result< 0 ? -1 :_Result;} #line 1446 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1462 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl vsprintf(char *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1477 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1498 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1516 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1526 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1547 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1563 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1585 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1602 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1630 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1641 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1659 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf(char const *const _Format, va_list _ArgList) { return _vscprintf_l(_Format,((void *) 0), _ArgList);} #line 1672 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p(char const *const _Format, va_list _ArgList) { return _vscprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1703 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1723 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1739 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1761 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf(char *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl sprintf(char *_Buffer, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl vsprintf(char *_Buffer, char const *_Format, va_list _Args);__inline int __cdecl _sprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1810 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1832 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1834 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1862 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1882 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1905 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1936 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1956 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _snprintf(char *_Buffer, size_t _BufferCount, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _vsnprintf(char *_Buffer, size_t _BufferCount, char const *_Format, va_list _Args);__inline int __cdecl _snprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1986 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2006 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2028 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2049 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2092 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2110 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p(_Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2127 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsscanf(unsigned __int64 _Options, char const *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vsscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2158 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsscanf(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2172 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2189 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __inline int __cdecl vsscanf_s(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2208 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) #line 2219 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2238 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl sscanf(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2275 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sscanf_s(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsscanf_s(_Buffer, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2297 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 2299 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2326 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2349 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2374 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2397 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) __declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_tempnam" ". See online help for details.")) char *__cdecl tempnam(char const *_Directory, char const *_FilePrefix);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fcloseall" ". See online help for details.")) int __cdecl fcloseall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fdopen" ". See online help for details.")) FILE *__cdecl fdopen(int _FileHandle, char const *_Format);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fgetchar" ". See online help for details.")) int __cdecl fgetchar(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fileno" ". See online help for details.")) int __cdecl fileno(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_flushall" ". See online help for details.")) int __cdecl flushall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fputchar" ". See online help for details.")) int __cdecl fputchar(int _Ch);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_getw" ". See online help for details.")) int __cdecl getw(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_putw" ". See online help for details.")) int __cdecl putw(int _Ch, FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_rmtmp" ". See online help for details.")) int __cdecl rmtmp(void);#line 2441 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h"__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma once#pragma once#pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int *__cdecl _errno(void);errno_t __cdecl _set_errno(int _Value);errno_t __cdecl _get_errno(int *_Value);unsigned long *__cdecl __doserrno(void);errno_t __cdecl _set_doserrno(unsigned long _Value);errno_t __cdecl _get_doserrno(unsigned long *_Value);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) void *__cdecl memchr(void const *_Buf, int _Val, size_t _MaxCount);int __cdecl memcmp(void const *_Buf1, void const *_Buf2, size_t _Size);void *__cdecl memcpy(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memmove(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memset(void *_Dst, int _Val, size_t _Size);char *__cdecl strchr(char const *_Str, int _Val);char *__cdecl strrchr(char const *_Str, int _Ch);char *__cdecl strstr(char const *_Str, char const *_SubStr);wchar_t *__cdecl wcschr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsrchr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsstr(wchar_t const *_Str, wchar_t const *_SubStr);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) static __inline errno_t __cdecl memcpy_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;if(_Source==((void *) 0)||_DestinationSize< _SourceSize) { memset(_Destination, 0, _DestinationSize);{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;return 22 ;} memcpy(_Destination, _Source, _SourceSize);return 0;} static __inline errno_t __cdecl memmove_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;memmove(_Destination, _Source, _SourceSize);return 0;}#pragma warning(pop) __pragma(pack(pop))#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int __cdecl _memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);int __cdecl _memicmp_l(void const *_Buf1, void const *_Buf2, size_t _Size, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memccpy" ". See online help for details.")) void *__cdecl memccpy(void *_Dst, void const *_Src, int _Val, size_t _Size);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memicmp" ". See online help for details.")) int __cdecl memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl wcscat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcscpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcsncat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);errno_t __cdecl wcsncpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);wchar_t *__cdecl wcstok_s(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);__declspec(allocator) wchar_t *__cdecl _wcsdup(wchar_t const *_String);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscat(wchar_t *_Destination, wchar_t const *_Source);int __cdecl wcscmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscpy(wchar_t *_Destination, wchar_t const *_Source);size_t __cdecl wcscspn(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcslen(wchar_t const *_String);size_t __cdecl wcsnlen(wchar_t const *_Source, size_t _MaxCount);static __inline size_t __cdecl wcsnlen_s(wchar_t const *_Source, size_t _MaxCount) { return(_Source==0) ? 0 :wcsnlen(_Source, _MaxCount);}__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncat(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);int __cdecl wcsncmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncpy(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);wchar_t *__cdecl wcspbrk(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcsspn(wchar_t const *_String, wchar_t const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcstok(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);#line 237 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstring.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) static __inline wchar_t *__cdecl _wcstok(wchar_t *const _String, wchar_t const *const _Delimiter) { return wcstok(_String, _Delimiter, 0);} __declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcserror(int _ErrorNumber);errno_t __cdecl _wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, int _ErrorNumber);__declspec(deprecated("This function or variable may be unsafe. Consider using " "__wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl __wcserror(wchar_t const *_String);errno_t __cdecl __wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, wchar_t const *_ErrorMessage);int __cdecl _wcsicmp(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicmp_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicmp_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);errno_t __cdecl _wcsnset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);wchar_t *__cdecl _wcsrev(wchar_t *_String);errno_t __cdecl _wcsset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsset(wchar_t *_String, wchar_t _Value);errno_t __cdecl _wcslwr_s(wchar_t *_String, size_t _SizeInWords);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr(wchar_t *_String);errno_t __cdecl _wcslwr_s_l(wchar_t *_String, size_t _SizeInWords, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr_l(wchar_t *_String, _locale_t _Locale);errno_t __cdecl _wcsupr_s(wchar_t *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr(wchar_t *_String);errno_t __cdecl _wcsupr_s_l(wchar_t *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr_l(wchar_t *_String, _locale_t _Locale);size_t __cdecl wcsxfrm(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount);size_t __cdecl _wcsxfrm_l(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount, _locale_t _Locale);int __cdecl wcscoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcscoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsicoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsncoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsncoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _wcsnicoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsdup" ". See online help for details.")) wchar_t *__cdecl wcsdup(wchar_t const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicmp" ". See online help for details.")) int __cdecl wcsicmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnicmp" ". See online help for details.")) int __cdecl wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnset" ". See online help for details.")) wchar_t *__cdecl wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsrev" ". See online help for details.")) wchar_t *__cdecl wcsrev(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsset" ". See online help for details.")) wchar_t *__cdecl wcsset(wchar_t *_String, wchar_t _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcslwr" ". See online help for details.")) wchar_t *__cdecl wcslwr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsupr" ". See online help for details.")) wchar_t *__cdecl wcsupr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicoll" ". See online help for details.")) int __cdecl wcsicoll(wchar_t const *_String1, wchar_t const *_String2);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl strcpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strcat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strerror_s(char *_Buffer, size_t _SizeInBytes, int _ErrorNumber);errno_t __cdecl strncat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);errno_t __cdecl strncpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);char *__cdecl strtok_s(char *_String, char const *_Delimiter, char **_Context);void *__cdecl _memccpy(void *_Dst, void const *_Src, int _Val, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcat(char *_Destination, char const *_Source);int __cdecl strcmp(char const *_Str1, char const *_Str2);int __cdecl _strcmpi(char const *_String1, char const *_String2);int __cdecl strcoll(char const *_String1, char const *_String2);int __cdecl _strcoll_l(char const *_String1, char const *_String2, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcpy(char *_Destination, char const *_Source);size_t __cdecl strcspn(char const *_Str, char const *_Control);__declspec(allocator) char *__cdecl _strdup(char const *_Source);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strerror(char const *_ErrorMessage);errno_t __cdecl _strerror_s(char *_Buffer, size_t _SizeInBytes, char const *_ErrorMessage);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strerror(int _ErrorMessage);int __cdecl _stricmp(char const *_String1, char const *_String2);int __cdecl _stricoll(char const *_String1, char const *_String2);int __cdecl _stricoll_l(char const *_String1, char const *_String2, _locale_t _Locale);int __cdecl _stricmp_l(char const *_String1, char const *_String2, _locale_t _Locale);size_t __cdecl strlen(char const *_Str);errno_t __cdecl _strlwr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr(char *_String);errno_t __cdecl _strlwr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr_l(char *_String, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncat(char *_Destination, char const *_Source, size_t _Count);int __cdecl strncmp(char const *_Str1, char const *_Str2, size_t _MaxCount);int __cdecl _strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicmp_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strnicoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strncoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strncoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);size_t __cdecl __strncnt(char const *_String, size_t _Count);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncpy(char *_Destination, char const *_Source, size_t _Count);size_t __cdecl strnlen(char const *_String, size_t _MaxCount);static __inline size_t __cdecl strnlen_s(char const *_String, size_t _MaxCount) { return _String==0 ? 0 :strnlen(_String, _MaxCount);} errno_t __cdecl _strnset_s(char *_String, size_t _SizeInBytes, int _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strnset(char *_Destination, int _Value, size_t _Count);char *__cdecl strpbrk(char const *_Str, char const *_Control);char *__cdecl _strrev(char *_Str);errno_t __cdecl _strset_s(char *_Destination, size_t _DestinationSize, int _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strset(char *_Destination, int _Value);size_t __cdecl strspn(char const *_Str, char const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strtok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strtok(char *_String, char const *_Delimiter);errno_t __cdecl _strupr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr(char *_String);errno_t __cdecl _strupr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr_l(char *_String, _locale_t _Locale);size_t __cdecl strxfrm(char *_Destination, char const *_Source, size_t _MaxCount);size_t __cdecl _strxfrm_l(char *_Destination, char const *_Source, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strdup" ". See online help for details.")) char *__cdecl strdup(char const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strcmpi" ". See online help for details.")) int __cdecl strcmpi(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_stricmp" ". See online help for details.")) int __cdecl stricmp(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strlwr" ". See online help for details.")) char *__cdecl strlwr(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnicmp" ". See online help for details.")) int __cdecl strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnset" ". See online help for details.")) char *__cdecl strnset(char *_String, int _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strrev" ". See online help for details.")) char *__cdecl strrev(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strset" ". See online help for details.")) char *__cdecl strset(char *_String, int _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strupr" ". See online help for details.")) char *__cdecl strupr(char *_String);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) __pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) typedef unsigned short _ino_t;typedef _ino_t ino_t;#line 24 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef unsigned int _dev_t;typedef _dev_t dev_t;#line 36 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef long _off_t;typedef _off_t off_t;#line 48 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h"#pragma warning(pop) typedef char *sds;#pragma pack(push, 1) struct sdshdr5 { unsigned char flags;char buf[];};struct sdshdr8 { uint8_t len;uint8_t alloc;unsigned char flags;char buf[];};struct sdshdr16 { uint16_t len;uint16_t alloc;unsigned char flags;char buf[];};struct sdshdr32 { uint32_t len;uint32_t alloc;unsigned char flags;char buf[];};struct sdshdr64 { uint64_t len;uint64_t alloc;unsigned char flags;char buf[];};#pragma pack(pop) static inline size_t sdslen(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :return((flags) >> 3) ;case 1 :return((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len;case 2 :return((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len;case 3 :return((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) ->len;case 4 :return((struct sdshdr64 *)((s) -(sizeof(struct sdshdr64)))) ->len;} return 0;}static inline size_t sdsavail(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ return 0;} case 1 :{ struct sdshdr8 *sh=(void *)((s) -(sizeof(struct sdshdr8)));;return sh->alloc - sh->len;} case 2 :{ struct sdshdr16 *sh=(void *)((s) -(sizeof(struct sdshdr16)));;return sh->alloc - sh->len;} case 3 :{ struct sdshdr32 *sh=(void *)((s) -(sizeof(struct sdshdr32)));;return sh->alloc - sh->len;} case 4 :{ struct sdshdr64 *sh=(void *)((s) -(sizeof(struct sdshdr64)));;return sh->alloc - sh->len;} } return 0;}static inline void sdssetlen(sds s, size_t newlen) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ unsigned char *fp=((unsigned char *) s) - 1;*fp=0|(newlen<< 3);} break;case 1 :((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len=(uint8_t) newlen;break;case 2 :((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len=(uint16_t) newlen;break;case 3 :((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) -> len
Definition: CPAL.d:15583
int code
Definition: aftopl.c:52
#define type(a)
Definition: aptex-macros.h:171
#define name
struct mrb_value mrb_value
#define n
Definition: t4ht.c:1290
#define b
Definition: jpegint.h:372
#define ap
long pc
Definition: disdvi.c:114
static void
Definition: fpif.c:118
mpz_t * f
Definition: gen-fib.c:34
#define s
Definition: afcover.h:80
#define c(n)
Definition: gpos-common.c:150
#define a(n)
Definition: gpos-common.c:148
#define d(n)
Definition: gpos-common.c:151
int base
Definition: gsftopk.c:1502
small capitals from c petite p scientific f u
Definition: afcover.h:88
small capitals from c petite p
Definition: afcover.h:72
FT_UInt idx
Definition: cffcmap.c:135
signed short int16_t
Definition: stdint.h:76
unsigned short uint16_t
Definition: stdint.h:79
unsigned int uint32_t
Definition: stdint.h:80
unsigned int uintptr_t
Definition: stdint.h:119
unsigned char uint8_t
Definition: stdint.h:78
static luaL_Reg func[]
Definition: except.c:32
#define size_t
Definition: glob.c:257
void mrb_define_alias_id(mrb_state *mrb, struct RClass *c, mrb_sym a, mrb_sym b)
Definition: class.c:2232
void * mrb_default_allocf(mrb_state *, void *, size_t, void *)
Definition: state.c:61
mrb_value mrb_str_new_static(mrb_state *mrb, const char *p, size_t len)
Definition: string.c:221
void mrb_prepend_module(mrb_state *mrb, struct RClass *cla, struct RClass *prepended)
Definition: class.c:1481
mrb_bool mrb_obj_is_kind_of(mrb_state *mrb, mrb_value obj, struct RClass *c)
Definition: object.c:485
mrb_sym mrb_intern_str(mrb_state *, mrb_value)
Definition: symbol.c:251
mrb_int mrb_cmp(mrb_state *mrb, mrb_value obj1, mrb_value obj2)
Definition: numeric.c:1568
mrb_value mrb_fiber_alive_p(mrb_state *mrb, mrb_value fib)
Definition: fiber.c:288
void * mrb_calloc(mrb_state *, size_t, size_t)
Definition: gc.c:268
mrb_int mrb_get_argc(mrb_state *mrb)
Definition: class.c:814
void mrb_name_error(mrb_state *mrb, mrb_sym id, const char *fmt,...)
Definition: error.c:410
void mrb_garbage_collect(mrb_state *)
Definition: gc.c:1334
mrb_value mrb_vm_run(mrb_state *mrb, const struct RProc *proc, mrb_value self, mrb_int stack_keep)
Definition: vm.c:955
mrb_bool mrb_obj_is_instance_of(mrb_state *mrb, mrb_value obj, struct RClass *c)
Definition: kernel.c:324
const mrb_value * mrb_get_argv(mrb_state *mrb)
Definition: class.c:827
void mrb_gc_unregister(mrb_state *mrb, mrb_value obj)
Definition: gc.c:505
mrb_value mrb_fiber_yield(mrb_state *mrb, mrb_int argc, const mrb_value *argv)
Definition: fiber.c:345
const char * mrb_sym_dump(mrb_state *, mrb_sym)
Definition: symbol.c:622
mrb_state * mrb_open(void)
Definition: state.c:73
mrb_value mrb_funcall(mrb_state *mrb, mrb_value val, const char *name, mrb_int argc,...)
Definition: vm.c:317
struct RBasic * mrb_obj_alloc(mrb_state *, enum mrb_vtype, struct RClass *)
Definition: gc.c:535
void mrb_argnum_error(mrb_state *mrb, mrb_int argc, int min, int max)
Definition: error.c:547
struct RClass * mrb_define_module_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name)
Definition: class.c:469
mrb_sym mrb_intern_check(mrb_state *, const char *, size_t)
Definition: symbol.c:257
mrb_value mrb_to_str(mrb_state *mrb, mrb_value val)
Definition: object.c:594
void mrb_raisef(mrb_state *mrb, struct RClass *c, const char *fmt,...)
Definition: error.c:400
struct RClass * mrb_module_new(mrb_state *mrb)
Definition: class.c:2164
void mrb_gc_protect(mrb_state *mrb, mrb_value obj)
Definition: gc.c:471
void * mrb_pool_alloc(struct mrb_pool *, size_t)
Definition: pool.c:108
mrb_value mrb_vm_exec(mrb_state *mrb, const struct RProc *proc, const mrb_code *iseq)
Definition: vm.c:998
mrb_value mrb_Integer(mrb_state *mrb, mrb_value val)
Definition: object.c:565
mrb_value mrb_funcall_id(mrb_state *mrb, mrb_value val, mrb_sym mid, mrb_int argc,...)
Definition: vm.c:337
void mrb_define_class_method_id(mrb_state *mrb, struct RClass *cla, mrb_sym name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1688
void mrb_check_type(mrb_state *mrb, mrb_value x, enum mrb_vtype t)
Definition: object.c:400
mrb_value mrb_any_to_s(mrb_state *mrb, mrb_value obj)
Definition: object.c:442
void mrb_exc_raise(mrb_state *mrb, mrb_value exc)
Definition: error.c:199
mrb_value mrb_obj_dup(mrb_state *mrb, mrb_value obj)
Definition: class.c:2767
void * mrb_pool_realloc(struct mrb_pool *, void *, size_t oldlen, size_t newlen)
Definition: pool.c:157
struct RClass * mrb_module_get_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name)
Definition: class.c:670
mrb_value mrb_check_intern(mrb_state *, const char *, size_t)
Definition: symbol.c:268
mrb_value mrb_funcall_argv(mrb_state *mrb, mrb_value val, mrb_sym name, mrb_int argc, const mrb_value *argv)
Definition: vm.c:481
mrb_value mrb_obj_new(mrb_state *mrb, struct RClass *c, mrb_int argc, const mrb_value *argv)
Definition: class.c:1940
mrb_value mrb_notimplement_m(mrb_state *, mrb_value)
Definition: class.c:790
mrb_state * mrb_open_allocf(mrb_allocf f, void *ud)
Definition: state.c:89
void mrb_pool_close(struct mrb_pool *)
Definition: pool.c:77
void mrb_show_version(mrb_state *mrb)
Definition: print.c:62
mrb_sym mrb_intern_static(mrb_state *, const char *, size_t)
Definition: symbol.c:239
void mrb_write_barrier(mrb_state *, struct RBasic *)
Definition: gc.c:1374
void mrb_state_atexit(mrb_state *mrb, mrb_atexit_func func)
Definition: state.c:215
mrb_value mrb_yield_argv(mrb_state *mrb, mrb_value b, mrb_int argc, const mrb_value *argv)
Definition: vm.c:718
struct RClass * mrb_define_class_id(mrb_state *mrb, mrb_sym name, struct RClass *super)
Definition: class.c:516
void mrb_define_const(mrb_state *mrb, struct RClass *cla, const char *name, mrb_value val)
Definition: variable.c:870
void mrb_print_backtrace(mrb_state *mrb)
Definition: backtrace.c:108
void mrb_undef_method(mrb_state *mrb, struct RClass *cla, const char *name)
Definition: class.c:2296
void * mrb_realloc(mrb_state *, void *, size_t)
Definition: gc.c:238
mrb_value mrb_class_path(mrb_state *mrb, struct RClass *c)
Definition: class.c:2073
struct RClass * mrb_module_get_id(mrb_state *mrb, mrb_sym name)
Definition: class.c:682
void mrb_notimplement(mrb_state *)
Definition: class.c:779
uint8_t mrb_code
Definition: mruby.h:122
struct RClass * mrb_define_class(mrb_state *mrb, const char *name, struct RClass *super)
Definition: class.c:525
static void mrb_gc_arena_restore(mrb_state *mrb, int idx)
Definition: mruby.h:1239
static int mrb_gc_arena_save(mrb_state *mrb)
Definition: mruby.h:1233
void mrb_print_error(mrb_state *mrb)
Definition: print.c:56
mrb_value mrb_check_intern_cstr(mrb_state *, const char *)
Definition: symbol.c:282
#define MRB_METHOD_CACHE_SIZE
Definition: mruby.h:191
void mrb_show_copyright(mrb_state *mrb)
Definition: print.c:68
void mrb_undef_class_method_id(mrb_state *mrb, struct RClass *cls, mrb_sym name)
Definition: class.c:2302
mrb_value mrb_attr_get(mrb_state *mrb, mrb_value obj, mrb_sym id)
Definition: variable.c:1024
void mrb_define_alias(mrb_state *mrb, struct RClass *c, const char *a, const char *b)
Definition: class.c:2226
mrb_value mrb_format(mrb_state *mrb, const char *format,...)
Definition: error.c:372
#define MRB_FIXED_STATE_ATEXIT_STACK_SIZE
Definition: mruby.h:148
mrb_fiber_state
Definition: mruby.h:164
@ MRB_FIBER_SUSPENDED
Definition: mruby.h:168
@ MRB_FIBER_TERMINATED
Definition: mruby.h:170
@ MRB_FIBER_RESUMED
Definition: mruby.h:167
@ MRB_FIBER_RUNNING
Definition: mruby.h:166
@ MRB_FIBER_CREATED
Definition: mruby.h:165
@ MRB_FIBER_TRANSFERRED
Definition: mruby.h:169
const char * mrb_class_name(mrb_state *mrb, struct RClass *klass)
Definition: class.c:2102
mrb_value mrb_inspect(mrb_state *mrb, mrb_value obj)
Definition: object.c:655
mrb_bool mrb_class_defined_under(mrb_state *mrb, struct RClass *outer, const char *name)
Definition: class.c:607
void mrb_frozen_error(mrb_state *mrb, void *frozen_obj)
Definition: error.c:541
uint32_t mrb_aspec
Definition: mruby.h:131
mrb_value mrb_get_arg1(mrb_state *mrb)
Definition: class.c:840
mrb_bool mrb_func_basic_p(mrb_state *mrb, mrb_value obj, mrb_sym mid, mrb_func_t func)
Definition: kernel.c:19
void * mrb_realloc_simple(mrb_state *, void *, size_t)
Definition: gc.c:224
void mrb_bug(mrb_state *mrb, const char *fmt,...)
Definition: error.c:438
struct RClass * mrb_class_get(mrb_state *mrb, const char *name)
Definition: class.c:633
mrb_value mrb_fiber_resume(mrb_state *mrb, mrb_value fib, mrb_int argc, const mrb_value *argv)
Definition: fiber.c:275
static mrb_sym mrb_get_mid(mrb_state *mrb)
Definition: mruby.h:980
mrb_int mrb_get_args(mrb_state *mrb, mrb_args_format format,...)
Definition: class.c:891
void mrb_raise(mrb_state *mrb, struct RClass *c, const char *msg)
Definition: error.c:214
struct RClass * mrb_class_get_id(mrb_state *mrb, mrb_sym name)
Definition: class.c:639
mrb_bool mrb_class_defined_id(mrb_state *mrb, mrb_sym name)
Definition: class.c:601
void mrb_include_module(mrb_state *mrb, struct RClass *cla, struct RClass *included)
Definition: class.c:1440
mrb_bool mrb_obj_equal(mrb_state *mrb, mrb_value a, mrb_value b)
Definition: object.c:39
void mrb_define_module_function(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1701
void mrb_p(mrb_state *, mrb_value)
Definition: print.c:44
void mrb_close(mrb_state *mrb)
Definition: state.c:182
struct mrb_state mrb_state
mrb_value mrb_str_new_cstr(mrb_state *, const char *)
Definition: string.c:203
struct RClass * mrb_class_get_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name)
Definition: class.c:627
mrb_value mrb_check_intern_str(mrb_state *, mrb_value)
Definition: symbol.c:296
mrb_value mrb_obj_freeze(mrb_state *, mrb_value)
Definition: kernel.c:275
static mrb_value mrb_class_new_instance(mrb_state *mrb, mrb_int argc, const mrb_value *argv, struct RClass *c)
Definition: mruby.h:607
void mrb_define_singleton_method(mrb_state *mrb, struct RObject *cla, const char *name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1668
mrb_int mrb_obj_id(mrb_value obj)
Definition: etc.c:104
mrb_value mrb_top_run(mrb_state *mrb, const struct RProc *proc, mrb_value self, mrb_int stack_keep)
Definition: vm.c:2854
mrb_bool mrb_class_defined(mrb_state *mrb, const char *name)
Definition: class.c:593
struct RClass * mrb_define_class_under(mrb_state *mrb, struct RClass *outer, const char *name, struct RClass *super)
Definition: class.c:719
#define mrb_utf8_from_locale(p, l)
Definition: mruby.h:1150
mrb_sym mrb_obj_to_sym(mrb_state *mrb, mrb_value name)
Definition: etc.c:65
struct RClass * mrb_exc_get_id(mrb_state *mrb, mrb_sym name)
Definition: class.c:645
mrb_value mrb_str_new(mrb_state *mrb, const char *p, size_t len)
Definition: string.c:197
struct RClass * mrb_module_get(mrb_state *mrb, const char *name)
Definition: class.c:676
void mrb_gc_register(mrb_state *mrb, mrb_value obj)
Definition: gc.c:488
#define mrb_locale_from_utf8(p, l)
Definition: mruby.h:1151
void mrb_define_method(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t func, mrb_aspec aspec)
Definition: class.c:772
mrb_bool mrb_respond_to(mrb_state *mrb, mrb_value obj, mrb_sym mid)
Definition: class.c:2067
mrb_bool mrb_class_defined_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name)
Definition: class.c:615
mrb_value mrb_top_self(mrb_state *mrb)
Definition: state.c:209
void mrb_free(mrb_state *, void *)
Definition: gc.c:288
void mrb_field_write_barrier(mrb_state *, struct RBasic *, struct RBasic *)
Definition: gc.c:1345
mrb_value mrb_singleton_class(mrb_state *mrb, mrb_value val)
Definition: class.c:1657
mrb_bool mrb_equal(mrb_state *mrb, mrb_value obj1, mrb_value obj2)
Definition: object.c:46
void mrb_define_method_id(mrb_state *mrb, struct RClass *c, mrb_sym mid, mrb_func_t func, mrb_aspec aspec)
Definition: class.c:755
mrb_value mrb_convert_to_integer(mrb_state *mrb, mrb_value val, mrb_int base)
Definition: object.c:525
struct RClass * mrb_class_new(mrb_state *mrb, struct RClass *super)
Definition: class.c:2144
void mrb_incremental_gc(mrb_state *)
Definition: gc.c:1250
void(* mrb_atexit_func)(struct mrb_state *)
Definition: mruby.h:227
mrb_value mrb_obj_clone(mrb_state *mrb, mrb_value self)
Definition: class.c:2726
mrb_value mrb_funcall_with_block(mrb_state *mrb, mrb_value val, mrb_sym name, mrb_int argc, const mrb_value *argv, mrb_value block)
Definition: vm.c:380
void *(* mrb_allocf)(struct mrb_state *mrb, void *, size_t, void *ud)
Definition: mruby.h:145
struct RClass * mrb_obj_class(mrb_state *mrb, mrb_value obj)
Definition: class.c:2186
void mrb_define_const_id(mrb_state *mrb, struct RClass *cla, mrb_sym name, mrb_value val)
Definition: variable.c:864
static void mrb_check_frozen(mrb_state *mrb, void *o)
Definition: mruby.h:1348
struct RClass * mrb_define_class_under_id(mrb_state *mrb, struct RClass *outer, mrb_sym name, struct RClass *super)
Definition: class.c:704
void * mrb_malloc(mrb_state *, size_t)
Definition: gc.c:256
struct RClass * mrb_define_module_id(mrb_state *mrb, mrb_sym name)
Definition: class.c:442
mrb_value mrb_yield(mrb_state *mrb, mrb_value b, mrb_value arg)
Definition: vm.c:726
struct mrb_pool * mrb_pool_open(mrb_state *)
Definition: pool.c:64
const char * mrb_sym_name_len(mrb_state *, mrb_sym, mrb_int *)
Definition: symbol.c:328
void mrb_gc_mark(mrb_state *, struct RBasic *)
Definition: gc.c:786
mrb_value mrb_to_int(mrb_state *mrb, mrb_value val)
Definition: object.c:510
mrb_sym mrb_intern_check_str(mrb_state *, mrb_value)
Definition: symbol.c:290
uintptr_t mrb_method_t
Definition: mruby.h:206
mrb_sym mrb_intern_check_cstr(mrb_state *, const char *)
Definition: symbol.c:276
mrb_value mrb_yield_cont(mrb_state *mrb, mrb_value b, mrb_value self, mrb_int argc, const mrb_value *argv)
Definition: vm.c:734
mrb_value mrb_yield_with_class(mrb_state *mrb, mrb_value b, mrb_int argc, const mrb_value *argv, mrb_value self, struct RClass *c)
Definition: vm.c:670
void * mrb_alloca(mrb_state *mrb, size_t)
Definition: gc.c:294
void mrb_full_gc(mrb_state *)
Definition: gc.c:1299
mrb_value mrb_obj_inspect(mrb_state *mrb, mrb_value self)
Definition: kernel.c:55
const char * mrb_args_format
Definition: mruby.h:910
void mrb_stack_extend(mrb_state *, mrb_int)
Definition: vm.c:204
mrb_bool mrb_obj_eq(mrb_state *mrb, mrb_value a, mrb_value b)
Definition: object.c:15
struct RClass * mrb_class_get_under(mrb_state *mrb, struct RClass *outer, const char *name)
Definition: class.c:621
void mrb_define_global_const(mrb_state *mrb, const char *name, mrb_value val)
Definition: variable.c:876
void mrb_undef_method_id(mrb_state *, struct RClass *, mrb_sym)
Definition: class.c:2287
mrb_bool mrb_obj_respond_to(mrb_state *mrb, struct RClass *c, mrb_sym mid)
Definition: class.c:2055
struct RClass * mrb_singleton_class_ptr(mrb_state *mrb, mrb_value val)
Definition: class.c:1630
void mrb_undef_class_method(mrb_state *mrb, struct RClass *cls, const char *name)
Definition: class.c:2308
mrb_value mrb_exc_new(mrb_state *mrb, struct RClass *c, const char *ptr, size_t len)
Definition: error.c:22
const char * mrb_sym_name(mrb_state *, mrb_sym)
Definition: symbol.c:616
mrb_sym mrb_intern(mrb_state *, const char *, size_t)
Definition: symbol.c:233
mrb_value mrb_sym_str(mrb_state *, mrb_sym)
Definition: symbol.c:584
mrb_value mrb_vformat(mrb_state *mrb, const char *format, va_list ap)
Definition: error.c:258
struct RClass * mrb_define_module_under(mrb_state *mrb, struct RClass *outer, const char *name)
Definition: class.c:478
const char * mrb_obj_classname(mrb_state *mrb, mrb_value obj)
Definition: class.c:2112
mrb_value mrb_type_convert(mrb_state *mrb, mrb_value val, enum mrb_vtype type, mrb_sym method)
Definition: object.c:373
mrb_sym mrb_intern_cstr(mrb_state *mrb, const char *str)
Definition: symbol.c:245
mrb_bool mrb_eql(mrb_state *mrb, mrb_value obj1, mrb_value obj2)
Definition: object.c:661
mrb_state * mrb_open_core(mrb_allocf f, void *ud)
Definition: state.c:38
mrb_value mrb_Float(mrb_state *mrb, mrb_value val)
Definition: object.c:572
void mrb_define_module_function_id(mrb_state *mrb, struct RClass *cla, mrb_sym name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1694
void * mrb_malloc_simple(mrb_state *, size_t)
Definition: gc.c:262
mrb_value mrb_type_convert_check(mrb_state *mrb, mrb_value val, enum mrb_vtype type, mrb_sym method)
Definition: object.c:389
void mrb_warn(mrb_state *mrb, const char *fmt,...)
Definition: error.c:422
struct RClass * mrb_module_get_under(mrb_state *mrb, struct RClass *outer, const char *name)
Definition: class.c:664
struct RClass * mrb_define_module(mrb_state *mrb, const char *name)
Definition: class.c:448
void mrb_define_singleton_method_id(mrb_state *mrb, struct RObject *cla, mrb_sym name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1675
mrb_bool mrb_pool_can_realloc(struct mrb_pool *, void *, size_t)
Definition: pool.c:136
void mrb_define_class_method(mrb_state *mrb, struct RClass *cla, const char *name, mrb_func_t fun, mrb_aspec aspec)
Definition: class.c:1682
mrb_value(* mrb_func_t)(struct mrb_state *mrb, mrb_value self)
Definition: mruby.h:203
float x
Definition: cordic.py:15
#define mrb_frozen_p(o)
Definition: object.h:28
struct _proc * proc
Definition: obx.h:95
static int format
Definition: pbmclean.c:15
#define min(a, b)
Definition: pbmplus.h:223
#define max(a, b)
Definition: pbmto4425.c:11
set set set set set set set set set set set set set set set set set set set set *set set set macro pixldst op &r &cond WK op &r &cond WK op &r &cond WK else op &m &cond &ia op &r &cond WK else op &m &cond &ia elseif elseif else error unsupported base if elseif elseif else error unsupported unaligned pixldst unaligned endm macro pixst base base else pixldst base endif endm macro PF ptr
#define flags
#define MRB_INLINE
Definition: common.h:62
#define MRB_END_DECL
Definition: common.h:28
#define MRB_BEGIN_DECL
Definition: common.h:26
#define MRB_API
Definition: common.h:73
#define mrb_noreturn
Definition: common.h:44
#define str(s)
Definition: sh6.c:399
Definition: object.h:19
Definition: class.h:17
struct RClass * super
Definition: class.h:21
Definition: proc.h:18
Definition: object.h:38
Definition: object.h:30
Definition: proc.h:41
Definition: obx.h:103
Definition: mruby.h:218
struct RClass * c
Definition: mruby.h:219
mrb_sym mid
Definition: mruby.h:220
struct RClass * c0
Definition: mruby.h:219
mrb_method_t m
Definition: mruby.h:221
mrb_sym mid
Definition: mruby.h:152
mrb_value * stack
Definition: mruby.h:156
struct REnv * env
Definition: mruby.h:159
int16_t acc
Definition: mruby.h:154
int16_t argc
Definition: mruby.h:153
const mrb_code * pc
Definition: mruby.h:157
const struct RProc * proc
Definition: mruby.h:155
struct RClass * target_class
Definition: mruby.h:160
mrb_callinfo * ciend
Definition: mruby.h:179
mrb_callinfo * cibase
Definition: mruby.h:179
mrb_bool vmexec
Definition: mruby.h:182
enum mrb_fiber_state status
Definition: mruby.h:181
mrb_value * stbase
Definition: mruby.h:176
struct RFiber * fib
Definition: mruby.h:183
mrb_callinfo * ci
Definition: mruby.h:178
mrb_value * stend
Definition: mruby.h:176
struct mrb_context * prev
Definition: mruby.h:174
Definition: gc.h:58
int arena_idx
Definition: gc.h:69
Definition: irep.h:56
const mrb_sym * table
Definition: mruby.h:962
uint32_t num
Definition: mruby.h:960
uint32_t required
Definition: mruby.h:961
mrb_value * rest
Definition: mruby.h:964
mrb_value * values
Definition: mruby.h:963
Definition: pool.c:45
mrb_state * mrb
Definition: pool.c:46
char symbuf[8]
Definition: mruby.h:272
mrb_atexit_func * atexit_stack
Definition: mruby.h:297
struct RClass * class_class
Definition: mruby.h:243
struct RClass * eStandardError_class
Definition: mruby.h:285
mrb_gc gc
Definition: mruby.h:261
void * ud
Definition: mruby.h:292
struct RClass * module_class
Definition: mruby.h:244
mrb_sym symidx
Definition: mruby.h:267
struct RClass * true_class
Definition: mruby.h:255
struct RObject * stack_err
Definition: mruby.h:287
struct RClass * symbol_class
Definition: mruby.h:258
struct mrb_context * c
Definition: mruby.h:235
struct RClass * object_class
Definition: mruby.h:242
struct RObject * exc
Definition: mruby.h:239
void * allocf_ud
Definition: mruby.h:233
struct RClass * string_class
Definition: mruby.h:246
uint16_t atexit_stack_len
Definition: mruby.h:299
struct RClass * false_class
Definition: mruby.h:256
struct RClass * eException_class
Definition: mruby.h:284
struct RClass * array_class
Definition: mruby.h:247
struct iv_tbl * globals
Definition: mruby.h:237
struct RObject * top_self
Definition: mruby.h:241
mrb_sym symhash[256]
Definition: mruby.h:269
struct RClass * kernel_module
Definition: mruby.h:259
struct RClass * hash_class
Definition: mruby.h:248
mrb_allocf allocf
Definition: mruby.h:232
struct RClass * proc_class
Definition: mruby.h:245
struct mrb_cache_entry cache[(1<< 8)]
Definition: mruby.h:264
struct RClass * float_class
Definition: mruby.h:252
struct mrb_jmpbuf * jmp
Definition: mruby.h:230
struct mrb_context * root_c
Definition: mruby.h:236
struct RClass * nil_class
Definition: mruby.h:257
struct RObject * nomem_err
Definition: mruby.h:286
struct symbol_name * symtbl
Definition: mruby.h:268
struct RClass * range_class
Definition: mruby.h:249
struct RClass * integer_class
Definition: mruby.h:254
size_t symcapa
Definition: mruby.h:270
Definition: texview.c:48
Definition: dvips.h:235
Definition: strexpr.c:21
char fmt[256]
Definition: tex4ht.c:3925
int32_t mrb_int
Definition: value.h:35
mrb_vtype
Definition: value.h:107
char * va_list
Definition: varargs.h:22
#define regs
#define argv
Definition: xmain.c:270
#define argc
Definition: xmain.c:269