Current Path: > > opt > alt > ruby30 > include > > ruby > internal
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
arithmetic | Directory | - | - | |
attr | Directory | - | - | |
compiler_is | Directory | - | - | |
core | Directory | - | - | |
has | Directory | - | - | |
intern | Directory | - | - | |
anyargs.h | File | 37095 bytes | June 26 2024 13:55:16. | |
arithmetic.h | File | 2094 bytes | June 26 2024 13:55:16. | |
assume.h | File | 3336 bytes | June 26 2024 13:55:16. | |
cast.h | File | 2384 bytes | June 26 2024 13:55:16. | |
compiler_is.h | File | 2104 bytes | June 26 2024 13:55:16. | |
compiler_since.h | File | 2780 bytes | June 26 2024 13:55:16. | |
config.h | File | 4663 bytes | June 26 2024 13:55:16. | |
constant_p.h | File | 1843 bytes | June 26 2024 13:55:16. | |
core.h | File | 1873 bytes | June 26 2024 13:55:16. | |
ctype.h | File | 5076 bytes | June 26 2024 13:55:16. | |
dllexport.h | File | 3559 bytes | June 26 2024 13:55:16. | |
dosish.h | File | 2040 bytes | June 26 2024 13:55:16. | |
error.h | File | 3927 bytes | June 26 2024 13:55:16. | |
eval.h | File | 2501 bytes | June 26 2024 13:55:16. | |
event.h | File | 3370 bytes | June 26 2024 13:55:16. | |
fl_type.h | File | 13607 bytes | June 26 2024 13:55:16. | |
gc.h | File | 2302 bytes | June 26 2024 13:55:16. | |
glob.h | File | 1732 bytes | June 26 2024 13:55:16. | |
globals.h | File | 5063 bytes | June 26 2024 13:55:16. | |
interpreter.h | File | 3114 bytes | June 26 2024 13:55:16. | |
iterator.h | File | 3096 bytes | June 26 2024 13:55:16. | |
memory.h | File | 8870 bytes | June 26 2024 13:55:16. | |
method.h | File | 1906 bytes | June 26 2024 13:55:16. | |
module.h | File | 1819 bytes | June 26 2024 13:55:16. | |
newobj.h | File | 3197 bytes | June 26 2024 13:55:16. | |
rgengc.h | File | 6063 bytes | June 26 2024 13:55:16. | |
scan_args.h | File | 13819 bytes | June 26 2024 13:55:16. | |
special_consts.h | File | 6528 bytes | June 26 2024 13:55:16. | |
static_assert.h | File | 3214 bytes | June 26 2024 13:55:16. | |
stdalign.h | File | 4632 bytes | June 26 2024 13:55:16. | |
stdbool.h | File | 2033 bytes | June 26 2024 13:55:16. | |
symbol.h | File | 3719 bytes | June 26 2024 13:55:16. | |
token_paste.h | File | 3375 bytes | June 26 2024 13:55:16. | |
value.h | File | 2799 bytes | June 26 2024 13:55:16. | |
value_type.h | File | 10741 bytes | June 26 2024 13:55:16. | |
variable.h | File | 2656 bytes | June 26 2024 13:55:16. | |
warning_push.h | File | 4413 bytes | June 26 2024 13:55:16. | |
xmalloc.h | File | 15980 bytes | June 26 2024 13:55:16. |
#ifndef RBIMPL_NEWOBJ_H /*-*-C++-*-vi:se ft=cpp:*/ #define RBIMPL_NEWOBJ_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 #NEWOBJ. */ #include "ruby/internal/cast.h" #include "ruby/internal/core/rbasic.h" #include "ruby/internal/dllexport.h" #include "ruby/internal/fl_type.h" #include "ruby/internal/special_consts.h" #include "ruby/internal/value.h" #include "ruby/assert.h" #define RB_NEWOBJ(obj,type) type *(obj) = RBIMPL_CAST((type *)rb_newobj()) #define RB_NEWOBJ_OF(obj,type,klass,flags) type *(obj) = RBIMPL_CAST((type *)rb_newobj_of(klass, flags)) #define NEWOBJ RB_NEWOBJ #define NEWOBJ_OF RB_NEWOBJ_OF /* core has special NEWOBJ_OF() in internal.h */ #define OBJSETUP rb_obj_setup /* use NEWOBJ_OF instead of NEWOBJ()+OBJSETUP() */ #define CLONESETUP rb_clone_setup #define DUPSETUP rb_dup_setup RBIMPL_SYMBOL_EXPORT_BEGIN() VALUE rb_newobj(void); VALUE rb_newobj_of(VALUE, VALUE); VALUE rb_obj_setup(VALUE obj, VALUE klass, VALUE type); VALUE rb_obj_class(VALUE); VALUE rb_singleton_class_clone(VALUE); void rb_singleton_class_attached(VALUE,VALUE); void rb_copy_generic_ivar(VALUE,VALUE); RBIMPL_SYMBOL_EXPORT_END() static inline void rb_clone_setup(VALUE clone, VALUE obj) { RBIMPL_ASSERT_OR_ASSUME(! RB_SPECIAL_CONST_P(obj)); RBIMPL_ASSERT_OR_ASSUME(! RB_SPECIAL_CONST_P(clone)); const VALUE flags = RUBY_FL_PROMOTED0 | RUBY_FL_PROMOTED1 | RUBY_FL_FINALIZE; rb_obj_setup(clone, rb_singleton_class_clone(obj), RB_FL_TEST_RAW(obj, ~flags)); rb_singleton_class_attached(RBASIC_CLASS(clone), clone); if (RB_FL_TEST(obj, RUBY_FL_EXIVAR)) rb_copy_generic_ivar(clone, obj); } static inline void rb_dup_setup(VALUE dup, VALUE obj) { RBIMPL_ASSERT_OR_ASSUME(! RB_SPECIAL_CONST_P(obj)); RBIMPL_ASSERT_OR_ASSUME(! RB_SPECIAL_CONST_P(dup)); rb_obj_setup(dup, rb_obj_class(obj), RB_FL_TEST_RAW(obj, RUBY_FL_DUPPED)); if (RB_FL_TEST(obj, RUBY_FL_EXIVAR)) rb_copy_generic_ivar(dup, obj); } #endif /* RBIMPL_NEWOBJ_H */
SILENT KILLER Tool