zscan 2.0.8 → 2.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/pack/pack-27.c +1 -0
- data/ext/pack/pack.c +1 -0
- data/ext/pack/ruby/backward/2/assume.h +43 -0
- data/ext/pack/ruby/backward/2/attributes.h +157 -0
- data/ext/pack/ruby/backward/2/bool.h +37 -0
- data/ext/pack/ruby/backward/2/extern.h +46 -0
- data/ext/pack/ruby/backward/2/gcc_version_since.h +38 -0
- data/ext/pack/ruby/backward/2/inttypes.h +132 -0
- data/ext/pack/ruby/backward/2/limits.h +100 -0
- data/ext/pack/ruby/backward/2/long_long.h +65 -0
- data/ext/pack/ruby/backward/2/r_cast.h +27 -0
- data/ext/pack/ruby/backward/2/rmodule.h +31 -0
- data/ext/pack/ruby/backward/2/stdalign.h +30 -0
- data/ext/pack/ruby/backward/2/stdarg.h +47 -0
- data/ext/pack/ruby/backward/classext.h +25 -0
- data/ext/pack/ruby/backward/rubyio.h +18 -0
- data/ext/pack/ruby/backward/rubysig.h +26 -0
- data/ext/pack/ruby/backward/st.h +18 -0
- data/ext/pack/ruby/backward/util.h +18 -0
- data/ext/pack/ruby/internal/anyargs.h +375 -0
- data/ext/pack/ruby/internal/arithmetic.h +38 -0
- data/ext/pack/ruby/internal/arithmetic/char.h +58 -0
- data/ext/pack/ruby/internal/arithmetic/double.h +39 -0
- data/ext/pack/ruby/internal/arithmetic/fixnum.h +44 -0
- data/ext/pack/ruby/internal/arithmetic/gid_t.h +34 -0
- data/ext/pack/ruby/internal/arithmetic/int.h +163 -0
- data/ext/pack/ruby/internal/arithmetic/intptr_t.h +42 -0
- data/ext/pack/ruby/internal/arithmetic/long.h +244 -0
- data/ext/pack/ruby/internal/arithmetic/long_long.h +53 -0
- data/ext/pack/ruby/internal/arithmetic/mode_t.h +34 -0
- data/ext/pack/ruby/internal/arithmetic/off_t.h +49 -0
- data/ext/pack/ruby/internal/arithmetic/pid_t.h +34 -0
- data/ext/pack/ruby/internal/arithmetic/short.h +54 -0
- data/ext/pack/ruby/internal/arithmetic/size_t.h +51 -0
- data/ext/pack/ruby/internal/arithmetic/st_data_t.h +59 -0
- data/ext/pack/ruby/internal/arithmetic/uid_t.h +34 -0
- data/ext/pack/ruby/internal/assume.h +90 -0
- data/ext/pack/ruby/internal/attr/alloc_size.h +32 -0
- data/ext/pack/ruby/internal/attr/artificial.h +46 -0
- data/ext/pack/ruby/internal/attr/cold.h +37 -0
- data/ext/pack/ruby/internal/attr/const.h +46 -0
- data/ext/pack/ruby/internal/attr/constexpr.h +85 -0
- data/ext/pack/ruby/internal/attr/deprecated.h +59 -0
- data/ext/pack/ruby/internal/attr/diagnose_if.h +42 -0
- data/ext/pack/ruby/internal/attr/enum_extensibility.h +32 -0
- data/ext/pack/ruby/internal/attr/error.h +32 -0
- data/ext/pack/ruby/internal/attr/flag_enum.h +33 -0
- data/ext/pack/ruby/internal/attr/forceinline.h +40 -0
- data/ext/pack/ruby/internal/attr/format.h +38 -0
- data/ext/pack/ruby/internal/attr/maybe_unused.h +38 -0
- data/ext/pack/ruby/internal/attr/noalias.h +58 -0
- data/ext/pack/ruby/internal/attr/nodiscard.h +45 -0
- data/ext/pack/ruby/internal/attr/noexcept.h +91 -0
- data/ext/pack/ruby/internal/attr/noinline.h +35 -0
- data/ext/pack/ruby/internal/attr/nonnull.h +32 -0
- data/ext/pack/ruby/internal/attr/noreturn.h +48 -0
- data/ext/pack/ruby/internal/attr/pure.h +43 -0
- data/ext/pack/ruby/internal/attr/restrict.h +45 -0
- data/ext/pack/ruby/internal/attr/returns_nonnull.h +37 -0
- data/ext/pack/ruby/internal/attr/warning.h +32 -0
- data/ext/pack/ruby/internal/attr/weakref.h +32 -0
- data/ext/pack/ruby/internal/cast.h +53 -0
- data/ext/pack/ruby/internal/compiler_is.h +45 -0
- data/ext/pack/ruby/internal/compiler_is/apple.h +41 -0
- data/ext/pack/ruby/internal/compiler_is/clang.h +38 -0
- data/ext/pack/ruby/internal/compiler_is/gcc.h +46 -0
- data/ext/pack/ruby/internal/compiler_is/intel.h +41 -0
- data/ext/pack/ruby/internal/compiler_is/msvc.h +57 -0
- data/ext/pack/ruby/internal/compiler_is/sunpro.h +55 -0
- data/ext/pack/ruby/internal/compiler_since.h +61 -0
- data/ext/pack/ruby/internal/config.h +131 -0
- data/ext/pack/ruby/internal/constant_p.h +37 -0
- data/ext/pack/ruby/internal/core.h +35 -0
- data/ext/pack/ruby/internal/core/rarray.h +275 -0
- data/ext/pack/ruby/internal/core/rbasic.h +85 -0
- data/ext/pack/ruby/internal/core/rbignum.h +51 -0
- data/ext/pack/ruby/internal/core/rclass.h +47 -0
- data/ext/pack/ruby/internal/core/rdata.h +174 -0
- data/ext/pack/ruby/internal/core/rfile.h +36 -0
- data/ext/pack/ruby/internal/core/rhash.h +62 -0
- data/ext/pack/ruby/internal/core/rmatch.h +73 -0
- data/ext/pack/ruby/internal/core/robject.h +97 -0
- data/ext/pack/ruby/internal/core/rregexp.h +84 -0
- data/ext/pack/ruby/internal/core/rstring.h +215 -0
- data/ext/pack/ruby/internal/core/rstruct.h +73 -0
- data/ext/pack/ruby/internal/core/rtypeddata.h +184 -0
- data/ext/pack/ruby/internal/ctype.h +203 -0
- data/ext/pack/ruby/internal/dllexport.h +92 -0
- data/ext/pack/ruby/internal/dosish.h +63 -0
- data/ext/pack/ruby/internal/error.h +74 -0
- data/ext/pack/ruby/internal/eval.h +50 -0
- data/ext/pack/ruby/internal/event.h +75 -0
- data/ext/pack/ruby/internal/fl_type.h +469 -0
- data/ext/pack/ruby/internal/gc.h +35 -0
- data/ext/pack/ruby/internal/glob.h +35 -0
- data/ext/pack/ruby/internal/globals.h +159 -0
- data/ext/pack/ruby/internal/has/attribute.h +164 -0
- data/ext/pack/ruby/internal/has/builtin.h +105 -0
- data/ext/pack/ruby/internal/has/c_attribute.h +38 -0
- data/ext/pack/ruby/internal/has/cpp_attribute.h +79 -0
- data/ext/pack/ruby/internal/has/declspec_attribute.h +48 -0
- data/ext/pack/ruby/internal/has/extension.h +33 -0
- data/ext/pack/ruby/internal/has/feature.h +31 -0
- data/ext/pack/ruby/internal/has/warning.h +31 -0
- data/ext/pack/ruby/internal/intern/array.h +78 -0
- data/ext/pack/ruby/internal/intern/bignum.h +105 -0
- data/ext/pack/ruby/internal/intern/class.h +57 -0
- data/ext/pack/ruby/internal/intern/compar.h +34 -0
- data/ext/pack/ruby/internal/intern/complex.h +60 -0
- data/ext/pack/ruby/internal/intern/cont.h +40 -0
- data/ext/pack/ruby/internal/intern/dir.h +33 -0
- data/ext/pack/ruby/internal/intern/enum.h +33 -0
- data/ext/pack/ruby/internal/intern/enumerator.h +79 -0
- data/ext/pack/ruby/internal/intern/error.h +82 -0
- data/ext/pack/ruby/internal/intern/eval.h +59 -0
- data/ext/pack/ruby/internal/intern/file.h +44 -0
- data/ext/pack/ruby/internal/intern/gc.h +57 -0
- data/ext/pack/ruby/internal/intern/hash.h +59 -0
- data/ext/pack/ruby/internal/intern/io.h +70 -0
- data/ext/pack/ruby/internal/intern/load.h +39 -0
- data/ext/pack/ruby/internal/intern/marshal.h +35 -0
- data/ext/pack/ruby/internal/intern/numeric.h +42 -0
- data/ext/pack/ruby/internal/intern/object.h +90 -0
- data/ext/pack/ruby/internal/intern/parse.h +64 -0
- data/ext/pack/ruby/internal/intern/proc.h +53 -0
- data/ext/pack/ruby/internal/intern/process.h +46 -0
- data/ext/pack/ruby/internal/intern/random.h +45 -0
- data/ext/pack/ruby/internal/intern/range.h +35 -0
- data/ext/pack/ruby/internal/intern/rational.h +46 -0
- data/ext/pack/ruby/internal/intern/re.h +50 -0
- data/ext/pack/ruby/internal/intern/ruby.h +37 -0
- data/ext/pack/ruby/internal/intern/select.h +52 -0
- data/ext/pack/ruby/internal/intern/select/largesize.h +103 -0
- data/ext/pack/ruby/internal/intern/select/posix.h +82 -0
- data/ext/pack/ruby/internal/intern/select/win32.h +124 -0
- data/ext/pack/ruby/internal/intern/signal.h +40 -0
- data/ext/pack/ruby/internal/intern/sprintf.h +43 -0
- data/ext/pack/ruby/internal/intern/string.h +290 -0
- data/ext/pack/ruby/internal/intern/struct.h +47 -0
- data/ext/pack/ruby/internal/intern/thread.h +76 -0
- data/ext/pack/ruby/internal/intern/time.h +52 -0
- data/ext/pack/ruby/internal/intern/variable.h +83 -0
- data/ext/pack/ruby/internal/intern/vm.h +77 -0
- data/ext/pack/ruby/internal/interpreter.h +94 -0
- data/ext/pack/ruby/internal/iterator.h +65 -0
- data/ext/pack/ruby/internal/memory.h +286 -0
- data/ext/pack/ruby/internal/method.h +39 -0
- data/ext/pack/ruby/internal/module.h +39 -0
- data/ext/pack/ruby/internal/newobj.h +73 -0
- data/ext/pack/ruby/internal/rgengc.h +199 -0
- data/ext/pack/ruby/internal/scan_args.h +394 -0
- data/ext/pack/ruby/internal/special_consts.h +204 -0
- data/ext/pack/ruby/internal/static_assert.h +77 -0
- data/ext/pack/ruby/internal/stdalign.h +124 -0
- data/ext/pack/ruby/internal/stdbool.h +51 -0
- data/ext/pack/ruby/internal/symbol.h +114 -0
- data/ext/pack/ruby/internal/token_paste.h +75 -0
- data/ext/pack/ruby/internal/value.h +66 -0
- data/ext/pack/ruby/internal/value_type.h +354 -0
- data/ext/pack/ruby/internal/variable.h +62 -0
- data/ext/pack/ruby/internal/warning_push.h +91 -0
- data/ext/pack/ruby/internal/xmalloc.h +201 -0
- data/lib/zscan.rb +1 -1
- data/readme.md +2 -0
- data/zscan.gemspec +1 -1
- metadata +162 -2
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_FILE_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_FILE_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cFile.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
|
|
26
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
27
|
+
|
|
28
|
+
/* file.c */
|
|
29
|
+
VALUE rb_file_s_expand_path(int, const VALUE *);
|
|
30
|
+
VALUE rb_file_expand_path(VALUE, VALUE);
|
|
31
|
+
VALUE rb_file_s_absolute_path(int, const VALUE *);
|
|
32
|
+
VALUE rb_file_absolute_path(VALUE, VALUE);
|
|
33
|
+
VALUE rb_file_dirname(VALUE fname);
|
|
34
|
+
int rb_find_file_ext_safe(VALUE*, const char* const*, int); /* Remove in 3.0 */
|
|
35
|
+
VALUE rb_find_file_safe(VALUE, int); /* Remove in 3.0 */
|
|
36
|
+
int rb_find_file_ext(VALUE*, const char* const*);
|
|
37
|
+
VALUE rb_find_file(VALUE);
|
|
38
|
+
VALUE rb_file_directory_p(VALUE,VALUE);
|
|
39
|
+
VALUE rb_str_encode_ospath(VALUE);
|
|
40
|
+
int rb_is_absolute_path(const char *);
|
|
41
|
+
|
|
42
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
43
|
+
|
|
44
|
+
#endif /* RBIMPL_INTERN_FILE_H */
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_GC_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_GC_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_mGC.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
#include "ruby/backward/2/attributes.h"
|
|
26
|
+
|
|
27
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
28
|
+
|
|
29
|
+
/* gc.c */
|
|
30
|
+
COLDFUNC NORETURN(void rb_memerror(void));
|
|
31
|
+
PUREFUNC(int rb_during_gc(void));
|
|
32
|
+
void rb_gc_mark_locations(const VALUE*, const VALUE*);
|
|
33
|
+
void rb_mark_tbl(struct st_table*);
|
|
34
|
+
void rb_mark_tbl_no_pin(struct st_table*);
|
|
35
|
+
void rb_mark_set(struct st_table*);
|
|
36
|
+
void rb_mark_hash(struct st_table*);
|
|
37
|
+
void rb_gc_update_tbl_refs(st_table *ptr);
|
|
38
|
+
void rb_gc_mark_maybe(VALUE);
|
|
39
|
+
void rb_gc_mark(VALUE);
|
|
40
|
+
void rb_gc_mark_movable(VALUE);
|
|
41
|
+
VALUE rb_gc_location(VALUE);
|
|
42
|
+
void rb_gc_force_recycle(VALUE);
|
|
43
|
+
void rb_gc(void);
|
|
44
|
+
void rb_gc_copy_finalizer(VALUE,VALUE);
|
|
45
|
+
VALUE rb_gc_enable(void);
|
|
46
|
+
VALUE rb_gc_disable(void);
|
|
47
|
+
VALUE rb_gc_start(void);
|
|
48
|
+
VALUE rb_define_finalizer(VALUE, VALUE);
|
|
49
|
+
VALUE rb_undefine_finalizer(VALUE);
|
|
50
|
+
size_t rb_gc_count(void);
|
|
51
|
+
size_t rb_gc_stat(VALUE);
|
|
52
|
+
VALUE rb_gc_latest_gc_info(VALUE);
|
|
53
|
+
void rb_gc_adjust_memory_usage(ssize_t);
|
|
54
|
+
|
|
55
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
56
|
+
|
|
57
|
+
#endif /* RBIMPL_INTERN_GC_H */
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_HASH_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_HASH_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cHash.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
#include "ruby/st.h"
|
|
26
|
+
|
|
27
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
28
|
+
|
|
29
|
+
/* hash.c */
|
|
30
|
+
void rb_st_foreach_safe(struct st_table *, int (*)(st_data_t, st_data_t, st_data_t), st_data_t);
|
|
31
|
+
#define st_foreach_safe rb_st_foreach_safe
|
|
32
|
+
VALUE rb_check_hash_type(VALUE);
|
|
33
|
+
void rb_hash_foreach(VALUE, int (*)(VALUE, VALUE, VALUE), VALUE);
|
|
34
|
+
VALUE rb_hash(VALUE);
|
|
35
|
+
VALUE rb_hash_new(void);
|
|
36
|
+
VALUE rb_hash_dup(VALUE);
|
|
37
|
+
VALUE rb_hash_freeze(VALUE);
|
|
38
|
+
VALUE rb_hash_aref(VALUE, VALUE);
|
|
39
|
+
VALUE rb_hash_lookup(VALUE, VALUE);
|
|
40
|
+
VALUE rb_hash_lookup2(VALUE, VALUE, VALUE);
|
|
41
|
+
VALUE rb_hash_fetch(VALUE, VALUE);
|
|
42
|
+
VALUE rb_hash_aset(VALUE, VALUE, VALUE);
|
|
43
|
+
VALUE rb_hash_clear(VALUE);
|
|
44
|
+
VALUE rb_hash_delete_if(VALUE);
|
|
45
|
+
VALUE rb_hash_delete(VALUE,VALUE);
|
|
46
|
+
VALUE rb_hash_set_ifnone(VALUE hash, VALUE ifnone);
|
|
47
|
+
void rb_hash_bulk_insert(long, const VALUE *, VALUE);
|
|
48
|
+
typedef VALUE rb_hash_update_func(VALUE newkey, VALUE oldkey, VALUE value);
|
|
49
|
+
VALUE rb_hash_update_by(VALUE hash1, VALUE hash2, rb_hash_update_func *func);
|
|
50
|
+
struct st_table *rb_hash_tbl(VALUE, const char *file, int line);
|
|
51
|
+
int rb_path_check(const char*);
|
|
52
|
+
int rb_env_path_tainted(void);
|
|
53
|
+
VALUE rb_env_clear(void);
|
|
54
|
+
VALUE rb_hash_size(VALUE);
|
|
55
|
+
void rb_hash_free(VALUE);
|
|
56
|
+
|
|
57
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
58
|
+
|
|
59
|
+
#endif /* RBIMPL_INTERN_HASH_H */
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_IO_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_IO_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cIO.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
|
|
26
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
27
|
+
|
|
28
|
+
/* io.c */
|
|
29
|
+
#define rb_defout rb_stdout
|
|
30
|
+
RUBY_EXTERN VALUE rb_fs;
|
|
31
|
+
RUBY_EXTERN VALUE rb_output_fs;
|
|
32
|
+
RUBY_EXTERN VALUE rb_rs;
|
|
33
|
+
RUBY_EXTERN VALUE rb_default_rs;
|
|
34
|
+
RUBY_EXTERN VALUE rb_output_rs;
|
|
35
|
+
VALUE rb_io_write(VALUE, VALUE);
|
|
36
|
+
VALUE rb_io_gets(VALUE);
|
|
37
|
+
VALUE rb_io_getbyte(VALUE);
|
|
38
|
+
VALUE rb_io_ungetc(VALUE, VALUE);
|
|
39
|
+
VALUE rb_io_ungetbyte(VALUE, VALUE);
|
|
40
|
+
VALUE rb_io_close(VALUE);
|
|
41
|
+
VALUE rb_io_flush(VALUE);
|
|
42
|
+
VALUE rb_io_eof(VALUE);
|
|
43
|
+
VALUE rb_io_binmode(VALUE);
|
|
44
|
+
VALUE rb_io_ascii8bit_binmode(VALUE);
|
|
45
|
+
VALUE rb_io_addstr(VALUE, VALUE);
|
|
46
|
+
VALUE rb_io_printf(int, const VALUE*, VALUE);
|
|
47
|
+
VALUE rb_io_print(int, const VALUE*, VALUE);
|
|
48
|
+
VALUE rb_io_puts(int, const VALUE*, VALUE);
|
|
49
|
+
VALUE rb_io_fdopen(int, int, const char*);
|
|
50
|
+
VALUE rb_io_get_io(VALUE);
|
|
51
|
+
VALUE rb_file_open(const char*, const char*);
|
|
52
|
+
VALUE rb_file_open_str(VALUE, const char*);
|
|
53
|
+
VALUE rb_gets(void);
|
|
54
|
+
void rb_write_error(const char*);
|
|
55
|
+
void rb_write_error2(const char*, long);
|
|
56
|
+
void rb_close_before_exec(int lowfd, int maxhint, VALUE noclose_fds);
|
|
57
|
+
int rb_pipe(int *pipes);
|
|
58
|
+
int rb_reserved_fd_p(int fd);
|
|
59
|
+
int rb_cloexec_open(const char *pathname, int flags, mode_t mode);
|
|
60
|
+
int rb_cloexec_dup(int oldfd);
|
|
61
|
+
int rb_cloexec_dup2(int oldfd, int newfd);
|
|
62
|
+
int rb_cloexec_pipe(int fildes[2]);
|
|
63
|
+
int rb_cloexec_fcntl_dupfd(int fd, int minfd);
|
|
64
|
+
#define RB_RESERVED_FD_P(fd) rb_reserved_fd_p(fd)
|
|
65
|
+
void rb_update_max_fd(int fd);
|
|
66
|
+
void rb_fd_fix_cloexec(int fd);
|
|
67
|
+
|
|
68
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
69
|
+
|
|
70
|
+
#endif /* RBIMPL_INTERN_IO_H */
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_LOAD_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_LOAD_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_f_require().
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
|
|
26
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
27
|
+
|
|
28
|
+
/* load.c */
|
|
29
|
+
void rb_load(VALUE, int);
|
|
30
|
+
void rb_load_protect(VALUE, int, int*);
|
|
31
|
+
int rb_provided(const char*);
|
|
32
|
+
int rb_feature_provided(const char *, const char **);
|
|
33
|
+
void rb_provide(const char*);
|
|
34
|
+
VALUE rb_f_require(VALUE, VALUE);
|
|
35
|
+
VALUE rb_require_string(VALUE);
|
|
36
|
+
|
|
37
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
38
|
+
|
|
39
|
+
#endif /* RBIMPL_INTERN_LOAD_H */
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_MARSHAL_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_MARSHAL_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to rb_mMarshal.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
|
|
26
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
27
|
+
|
|
28
|
+
/* marshal.c */
|
|
29
|
+
VALUE rb_marshal_dump(VALUE, VALUE);
|
|
30
|
+
VALUE rb_marshal_load(VALUE);
|
|
31
|
+
void rb_marshal_define_compat(VALUE newclass, VALUE oldclass, VALUE (*dumper)(VALUE), VALUE (*loader)(VALUE, VALUE));
|
|
32
|
+
|
|
33
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
34
|
+
|
|
35
|
+
#endif /* RBIMPL_INTERN_MARSHAL_H */
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_NUMERIC_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_NUMERIC_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cNumeric.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/dllexport.h"
|
|
24
|
+
#include "ruby/internal/value.h"
|
|
25
|
+
#include "ruby/backward/2/attributes.h"
|
|
26
|
+
|
|
27
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
28
|
+
|
|
29
|
+
/* numeric.c */
|
|
30
|
+
NORETURN(void rb_num_zerodiv(void));
|
|
31
|
+
#define RB_NUM_COERCE_FUNCS_NEED_OPID 1
|
|
32
|
+
VALUE rb_num_coerce_bin(VALUE, VALUE, ID);
|
|
33
|
+
VALUE rb_num_coerce_cmp(VALUE, VALUE, ID);
|
|
34
|
+
VALUE rb_num_coerce_relop(VALUE, VALUE, ID);
|
|
35
|
+
VALUE rb_num_coerce_bit(VALUE, VALUE, ID);
|
|
36
|
+
VALUE rb_num2fix(VALUE);
|
|
37
|
+
VALUE rb_fix2str(VALUE, int);
|
|
38
|
+
CONSTFUNC(VALUE rb_dbl_cmp(double, double));
|
|
39
|
+
|
|
40
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
41
|
+
|
|
42
|
+
#endif /* RBIMPL_INTERN_NUMERIC_H */
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_OBJECT_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_OBJECT_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cObject.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/attr/pure.h"
|
|
24
|
+
#include "ruby/internal/dllexport.h"
|
|
25
|
+
#include "ruby/internal/value.h"
|
|
26
|
+
|
|
27
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
28
|
+
|
|
29
|
+
#define RB_OBJ_INIT_COPY(obj, orig) \
|
|
30
|
+
((obj) != (orig) && (rb_obj_init_copy((obj), (orig)), 1))
|
|
31
|
+
#define OBJ_INIT_COPY(obj, orig) RB_OBJ_INIT_COPY(obj, orig)
|
|
32
|
+
|
|
33
|
+
VALUE rb_class_new_instance_pass_kw(int, const VALUE *, VALUE);
|
|
34
|
+
VALUE rb_class_new_instance(int, const VALUE*, VALUE);
|
|
35
|
+
VALUE rb_class_new_instance_kw(int, const VALUE*, VALUE, int);
|
|
36
|
+
|
|
37
|
+
/* object.c */
|
|
38
|
+
int rb_eql(VALUE, VALUE);
|
|
39
|
+
VALUE rb_any_to_s(VALUE);
|
|
40
|
+
VALUE rb_inspect(VALUE);
|
|
41
|
+
VALUE rb_obj_is_instance_of(VALUE, VALUE);
|
|
42
|
+
VALUE rb_obj_is_kind_of(VALUE, VALUE);
|
|
43
|
+
VALUE rb_obj_alloc(VALUE);
|
|
44
|
+
VALUE rb_obj_clone(VALUE);
|
|
45
|
+
VALUE rb_obj_dup(VALUE);
|
|
46
|
+
VALUE rb_obj_init_copy(VALUE,VALUE);
|
|
47
|
+
VALUE rb_obj_taint(VALUE);
|
|
48
|
+
|
|
49
|
+
RBIMPL_ATTR_PURE()
|
|
50
|
+
VALUE rb_obj_tainted(VALUE);
|
|
51
|
+
VALUE rb_obj_untaint(VALUE);
|
|
52
|
+
VALUE rb_obj_untrust(VALUE);
|
|
53
|
+
|
|
54
|
+
RBIMPL_ATTR_PURE()
|
|
55
|
+
VALUE rb_obj_untrusted(VALUE);
|
|
56
|
+
VALUE rb_obj_trust(VALUE);
|
|
57
|
+
VALUE rb_obj_freeze(VALUE);
|
|
58
|
+
|
|
59
|
+
RBIMPL_ATTR_PURE()
|
|
60
|
+
VALUE rb_obj_frozen_p(VALUE);
|
|
61
|
+
|
|
62
|
+
VALUE rb_obj_id(VALUE);
|
|
63
|
+
VALUE rb_memory_id(VALUE);
|
|
64
|
+
VALUE rb_obj_class(VALUE);
|
|
65
|
+
|
|
66
|
+
RBIMPL_ATTR_PURE()
|
|
67
|
+
VALUE rb_class_real(VALUE);
|
|
68
|
+
|
|
69
|
+
RBIMPL_ATTR_PURE()
|
|
70
|
+
VALUE rb_class_inherited_p(VALUE, VALUE);
|
|
71
|
+
VALUE rb_class_superclass(VALUE);
|
|
72
|
+
VALUE rb_class_get_superclass(VALUE);
|
|
73
|
+
VALUE rb_convert_type(VALUE,int,const char*,const char*);
|
|
74
|
+
VALUE rb_check_convert_type(VALUE,int,const char*,const char*);
|
|
75
|
+
VALUE rb_check_to_integer(VALUE, const char *);
|
|
76
|
+
VALUE rb_check_to_float(VALUE);
|
|
77
|
+
VALUE rb_to_int(VALUE);
|
|
78
|
+
VALUE rb_check_to_int(VALUE);
|
|
79
|
+
VALUE rb_Integer(VALUE);
|
|
80
|
+
VALUE rb_to_float(VALUE);
|
|
81
|
+
VALUE rb_Float(VALUE);
|
|
82
|
+
VALUE rb_String(VALUE);
|
|
83
|
+
VALUE rb_Array(VALUE);
|
|
84
|
+
VALUE rb_Hash(VALUE);
|
|
85
|
+
double rb_cstr_to_dbl(const char*, int);
|
|
86
|
+
double rb_str_to_dbl(VALUE, int);
|
|
87
|
+
|
|
88
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
89
|
+
|
|
90
|
+
#endif /* RBIMPL_INTERN_OBJECT_H */
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
#ifndef RBIMPL_INTERN_PARSE_H /*-*-C++-*-vi:se ft=cpp:*/
|
|
2
|
+
#define RBIMPL_INTERN_PARSE_H
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
* @author Ruby developers <ruby-core@ruby-lang.org>
|
|
6
|
+
* @copyright This file is a part of the programming language Ruby.
|
|
7
|
+
* Permission is hereby granted, to either redistribute and/or
|
|
8
|
+
* modify this file, provided that the conditions mentioned in the
|
|
9
|
+
* file COPYING are met. Consult the file for details.
|
|
10
|
+
* @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are
|
|
11
|
+
* implementation details. Don't take them as canon. They could
|
|
12
|
+
* rapidly appear then vanish. The name (path) of this header file
|
|
13
|
+
* is also an implementation detail. Do not expect it to persist
|
|
14
|
+
* at the place it is now. Developers are free to move it anywhere
|
|
15
|
+
* anytime at will.
|
|
16
|
+
* @note To ruby-core: remember that this header can be possibly
|
|
17
|
+
* recursively included from extension libraries written in C++.
|
|
18
|
+
* Do not expect for instance `__VA_ARGS__` is always available.
|
|
19
|
+
* We assume C99 for ruby itself but we don't assume languages of
|
|
20
|
+
* extension libraries. They could be written in C++98.
|
|
21
|
+
* @brief Public APIs related to ::rb_cSymbol.
|
|
22
|
+
*/
|
|
23
|
+
#include "ruby/internal/attr/const.h"
|
|
24
|
+
#include "ruby/internal/dllexport.h"
|
|
25
|
+
#include "ruby/internal/value.h"
|
|
26
|
+
|
|
27
|
+
RBIMPL_SYMBOL_EXPORT_BEGIN()
|
|
28
|
+
|
|
29
|
+
/* parse.y */
|
|
30
|
+
ID rb_id_attrset(ID);
|
|
31
|
+
|
|
32
|
+
RBIMPL_ATTR_CONST()
|
|
33
|
+
int rb_is_const_id(ID);
|
|
34
|
+
|
|
35
|
+
RBIMPL_ATTR_CONST()
|
|
36
|
+
int rb_is_global_id(ID);
|
|
37
|
+
|
|
38
|
+
RBIMPL_ATTR_CONST()
|
|
39
|
+
int rb_is_instance_id(ID);
|
|
40
|
+
|
|
41
|
+
RBIMPL_ATTR_CONST()
|
|
42
|
+
int rb_is_attrset_id(ID);
|
|
43
|
+
|
|
44
|
+
RBIMPL_ATTR_CONST()
|
|
45
|
+
int rb_is_class_id(ID);
|
|
46
|
+
|
|
47
|
+
RBIMPL_ATTR_CONST()
|
|
48
|
+
int rb_is_local_id(ID);
|
|
49
|
+
|
|
50
|
+
RBIMPL_ATTR_CONST()
|
|
51
|
+
int rb_is_junk_id(ID);
|
|
52
|
+
int rb_symname_p(const char*);
|
|
53
|
+
int rb_sym_interned_p(VALUE);
|
|
54
|
+
VALUE rb_backref_get(void);
|
|
55
|
+
void rb_backref_set(VALUE);
|
|
56
|
+
VALUE rb_lastline_get(void);
|
|
57
|
+
void rb_lastline_set(VALUE);
|
|
58
|
+
|
|
59
|
+
/* symbol.c */
|
|
60
|
+
VALUE rb_sym_all_symbols(void);
|
|
61
|
+
|
|
62
|
+
RBIMPL_SYMBOL_EXPORT_END()
|
|
63
|
+
|
|
64
|
+
#endif /* RBIMPL_INTERN_PARSE_H */
|