X7ROOT File Manager
Current Path:
/opt/alt/ruby30/include/ruby/internal/intern
opt
/
alt
/
ruby30
/
include
/
ruby
/
internal
/
intern
/
??
..
??
array.h
(3.08 KB)
??
bignum.h
(4.15 KB)
??
class.h
(2.68 KB)
??
compar.h
(1.59 KB)
??
complex.h
(2.69 KB)
??
cont.h
(1.96 KB)
??
dir.h
(1.52 KB)
??
enum.h
(1.55 KB)
??
enumerator.h
(3.77 KB)
??
error.h
(3.37 KB)
??
eval.h
(2.19 KB)
??
file.h
(1.9 KB)
??
gc.h
(2.33 KB)
??
hash.h
(2.59 KB)
??
io.h
(2.82 KB)
??
load.h
(1.9 KB)
??
marshal.h
(1.69 KB)
??
numeric.h
(1.9 KB)
??
object.h
(3.15 KB)
??
parse.h
(2.1 KB)
??
proc.h
(2.4 KB)
??
process.h
(2.04 KB)
??
random.h
(2.21 KB)
??
range.h
(1.67 KB)
??
rational.h
(2.16 KB)
??
re.h
(2.12 KB)
??
ruby.h
(1.63 KB)
??
select
??
select.h
(2.17 KB)
??
signal.h
(1.71 KB)
??
sprintf.h
(1.89 KB)
??
string.h
(10.18 KB)
??
struct.h
(2.22 KB)
??
thread.h
(3.15 KB)
??
time.h
(2.07 KB)
??
variable.h
(3.38 KB)
??
vm.h
(3.01 KB)
Editing: enumerator.h
#ifndef RBIMPL_INTERN_ENUMERATOR_H /*-*-C++-*-vi:se ft=cpp:*/ #define RBIMPL_INTERN_ENUMERATOR_H /** * @file * @author Ruby developers <ruby-core@ruby-lang.org> * @copyright This file is a part of the programming language Ruby. * Permission is hereby granted, to either redistribute and/or * modify this file, provided that the conditions mentioned in the * file COPYING are met. Consult the file for details. * @warning Symbols prefixed with either `RBIMPL` or `rbimpl` are * implementation details. Don't take them as canon. They could * rapidly appear then vanish. The name (path) of this header file * is also an implementation detail. Do not expect it to persist * at the place it is now. Developers are free to move it anywhere * anytime at will. * @note To ruby-core: remember that this header can be possibly * recursively included from extension libraries written in C++. * Do not expect for instance `__VA_ARGS__` is always available. * We assume C99 for ruby itself but we don't assume languages of * extension libraries. They could be written in C++98. * @brief Public APIs related to ::rb_cEnumerator. */ #include "ruby/internal/dllexport.h" #include "ruby/internal/intern/eval.h" /* rb_frame_this_func */ #include "ruby/internal/iterator.h" /* rb_block_given_p */ #include "ruby/internal/symbol.h" #include "ruby/internal/value.h" RBIMPL_SYMBOL_EXPORT_BEGIN() typedef VALUE rb_enumerator_size_func(VALUE, VALUE, VALUE); typedef struct { VALUE begin; VALUE end; VALUE step; int exclude_end; } rb_arithmetic_sequence_components_t; /* enumerator.c */ VALUE rb_enumeratorize(VALUE, VALUE, int, const VALUE *); VALUE rb_enumeratorize_with_size(VALUE, VALUE, int, const VALUE *, rb_enumerator_size_func *); VALUE rb_enumeratorize_with_size_kw(VALUE, VALUE, int, const VALUE *, rb_enumerator_size_func *, int); int rb_arithmetic_sequence_extract(VALUE, rb_arithmetic_sequence_components_t *); VALUE rb_arithmetic_sequence_beg_len_step(VALUE, long *begp, long *lenp, long *stepp, long len, int err); RBIMPL_SYMBOL_EXPORT_END() #ifndef RUBY_EXPORT # define rb_enumeratorize_with_size(obj, id, argc, argv, size_fn) \ rb_enumeratorize_with_size(obj, id, argc, argv, (rb_enumerator_size_func *)(size_fn)) # define rb_enumeratorize_with_size_kw(obj, id, argc, argv, size_fn, kw_splat) \ rb_enumeratorize_with_size_kw(obj, id, argc, argv, (rb_enumerator_size_func *)(size_fn), kw_splat) #endif #define SIZED_ENUMERATOR(obj, argc, argv, size_fn) \ rb_enumeratorize_with_size((obj), ID2SYM(rb_frame_this_func()), \ (argc), (argv), (size_fn)) #define SIZED_ENUMERATOR_KW(obj, argc, argv, size_fn, kw_splat) \ rb_enumeratorize_with_size_kw((obj), ID2SYM(rb_frame_this_func()), \ (argc), (argv), (size_fn), (kw_splat)) #define RETURN_SIZED_ENUMERATOR(obj, argc, argv, size_fn) do { \ if (!rb_block_given_p()) \ return SIZED_ENUMERATOR(obj, argc, argv, size_fn); \ } while (0) #define RETURN_SIZED_ENUMERATOR_KW(obj, argc, argv, size_fn, kw_splat) do { \ if (!rb_block_given_p()) \ return SIZED_ENUMERATOR_KW(obj, argc, argv, size_fn, kw_splat); \ } while (0) #define RETURN_ENUMERATOR(obj, argc, argv) \ RETURN_SIZED_ENUMERATOR(obj, argc, argv, 0) #define RETURN_ENUMERATOR_KW(obj, argc, argv, kw_splat) \ RETURN_SIZED_ENUMERATOR_KW(obj, argc, argv, 0, kw_splat) #endif /* RBIMPL_INTERN_ENUMERATOR_H */
Upload File
Create Folder