X7ROOT File Manager
Current Path:
/opt/alt/ruby30/include/ruby/internal
opt
/
alt
/
ruby30
/
include
/
ruby
/
internal
/
📁
..
📄
anyargs.h
(36.23 KB)
📁
arithmetic
📄
arithmetic.h
(2.04 KB)
📄
assume.h
(3.26 KB)
📁
attr
📄
cast.h
(2.33 KB)
📁
compiler_is
📄
compiler_is.h
(2.05 KB)
📄
compiler_since.h
(2.71 KB)
📄
config.h
(4.55 KB)
📄
constant_p.h
(1.8 KB)
📁
core
📄
core.h
(1.83 KB)
📄
ctype.h
(4.96 KB)
📄
dllexport.h
(3.48 KB)
📄
dosish.h
(1.99 KB)
📄
error.h
(3.83 KB)
📄
eval.h
(2.44 KB)
📄
event.h
(3.29 KB)
📄
fl_type.h
(13.29 KB)
📄
gc.h
(2.25 KB)
📄
glob.h
(1.69 KB)
📄
globals.h
(4.94 KB)
📁
has
📁
intern
📄
interpreter.h
(3.04 KB)
📄
iterator.h
(3.02 KB)
📄
memory.h
(8.66 KB)
📄
method.h
(1.86 KB)
📄
module.h
(1.78 KB)
📄
newobj.h
(3.12 KB)
📄
rgengc.h
(5.92 KB)
📄
scan_args.h
(13.5 KB)
📄
special_consts.h
(6.38 KB)
📄
static_assert.h
(3.14 KB)
📄
stdalign.h
(4.52 KB)
📄
stdbool.h
(1.99 KB)
📄
symbol.h
(3.63 KB)
📄
token_paste.h
(3.3 KB)
📄
value.h
(2.73 KB)
📄
value_type.h
(10.49 KB)
📄
variable.h
(2.59 KB)
📄
warning_push.h
(4.31 KB)
📄
xmalloc.h
(15.61 KB)
Editing: symbol.h
#ifndef RBIMPL_SYMBOL_H /*-*-C++-*-vi:se ft=cpp:*/ #define RBIMPL_SYMBOL_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 Defines #rb_intern */ #include "ruby/internal/config.h" #ifdef HAVE_STDDEF_H # include <stddef.h> #endif #ifdef HAVE_STRING_H # include <string.h> #endif #include "ruby/internal/attr/nonnull.h" #include "ruby/internal/attr/pure.h" #include "ruby/internal/attr/noalias.h" #include "ruby/internal/cast.h" #include "ruby/internal/constant_p.h" #include "ruby/internal/dllexport.h" #include "ruby/internal/has/builtin.h" #include "ruby/internal/value.h" #define RB_ID2SYM rb_id2sym #define RB_SYM2ID rb_sym2id #define ID2SYM RB_ID2SYM #define SYM2ID RB_SYM2ID #define CONST_ID_CACHE RUBY_CONST_ID_CACHE #define CONST_ID RUBY_CONST_ID /** @cond INTERNAL_MACRO */ #define rb_intern_const rb_intern_const /** @endcond */ RBIMPL_SYMBOL_EXPORT_BEGIN() ID rb_sym2id(VALUE); VALUE rb_id2sym(ID); ID rb_intern(const char*); ID rb_intern2(const char*, long); ID rb_intern_str(VALUE str); const char *rb_id2name(ID); ID rb_check_id(volatile VALUE *); ID rb_to_id(VALUE); VALUE rb_id2str(ID); VALUE rb_sym2str(VALUE); VALUE rb_to_symbol(VALUE name); VALUE rb_check_symbol(volatile VALUE *namep); RBIMPL_SYMBOL_EXPORT_END() RBIMPL_ATTR_PURE() RBIMPL_ATTR_NONNULL(()) static inline ID rb_intern_const(const char *str) { size_t len = strlen(str); return rb_intern2(str, RBIMPL_CAST((long)len)); } RBIMPL_ATTR_NOALIAS() RBIMPL_ATTR_NONNULL(()) static inline ID rbimpl_intern_const(ID *ptr, const char *str) { while (! *ptr) { *ptr = rb_intern_const(str); } return *ptr; } /* Does anyone use it? Preserved for backward compat. */ #define RUBY_CONST_ID_CACHE(result, str) \ { \ static ID rb_intern_id_cache; \ rbimpl_intern_const(&rb_intern_id_cache, (str)); \ result rb_intern_id_cache; \ } #define RUBY_CONST_ID(var, str) \ do { \ static ID rbimpl_id; \ (var) = rbimpl_intern_const(&rbimpl_id, (str)); \ } while (0) #if defined(HAVE_STMT_AND_DECL_IN_EXPR) /* __builtin_constant_p and statement expression is available * since gcc-2.7.2.3 at least. */ #define rb_intern(str) \ (RBIMPL_CONSTANT_P(str) ? \ __extension__ ({ \ static ID rbimpl_id; \ rbimpl_intern_const(&rbimpl_id, (str)); \ }) : \ (rb_intern)(str)) #endif #endif /* RBIMPL_SYMBOL_H */
Upload File
Create Folder