1#ifndef RUBY_INTERNAL_ENCODING_CODERANGE_H
2#define RUBY_INTERNAL_ENCODING_CODERANGE_H
65rb_enc_coderange_clean_p(
int cr)
82 return rb_enc_coderange_clean_p(cr);
178#define ENC_CODERANGE_MASK RUBY_ENC_CODERANGE_MASK
179#define ENC_CODERANGE_UNKNOWN RUBY_ENC_CODERANGE_UNKNOWN
180#define ENC_CODERANGE_7BIT RUBY_ENC_CODERANGE_7BIT
181#define ENC_CODERANGE_VALID RUBY_ENC_CODERANGE_VALID
182#define ENC_CODERANGE_BROKEN RUBY_ENC_CODERANGE_BROKEN
183#define ENC_CODERANGE_CLEAN_P(cr) RB_ENC_CODERANGE_CLEAN_P(cr)
184#define ENC_CODERANGE(obj) RB_ENC_CODERANGE(obj)
185#define ENC_CODERANGE_ASCIIONLY(obj) RB_ENC_CODERANGE_ASCIIONLY(obj)
186#define ENC_CODERANGE_SET(obj,cr) RB_ENC_CODERANGE_SET(obj,cr)
187#define ENC_CODERANGE_CLEAR(obj) RB_ENC_CODERANGE_CLEAR(obj)
188#define ENC_CODERANGE_AND(a, b) RB_ENC_CODERANGE_AND(a, b)
189#define ENCODING_CODERANGE_SET(obj, encindex, cr) RB_ENCODING_CODERANGE_SET(obj, encindex, cr)
192#define RB_ENC_CODERANGE RB_ENC_CODERANGE
193#define RB_ENC_CODERANGE_AND RB_ENC_CODERANGE_AND
194#define RB_ENC_CODERANGE_ASCIIONLY RB_ENC_CODERANGE_ASCIIONLY
195#define RB_ENC_CODERANGE_CLEAN_P RB_ENC_CODERANGE_CLEAN_P
196#define RB_ENC_CODERANGE_CLEAR RB_ENC_CODERANGE_CLEAR
197#define RB_ENC_CODERANGE_SET RB_ENC_CODERANGE_SET
static void RB_ENC_CODERANGE_CLEAR(VALUE obj)
Destructively clears the passed object's (inline) code range.
ruby_coderange_type
What rb_enc_str_coderange() returns.
@ RUBY_ENC_CODERANGE_MASK
Where the coderange resides.
@ RUBY_ENC_CODERANGE_VALID
The object's encoding and contents are consistent each other.
@ RUBY_ENC_CODERANGE_7BIT
The object holds 0 to 127 inclusive and nothing else.
@ RUBY_ENC_CODERANGE_UNKNOWN
The object's coderange is unclear yet.
@ RUBY_ENC_CODERANGE_BROKEN
The object holds invalid/malformed/broken character(s).
static void RB_ENC_CODERANGE_SET(VALUE obj, enum ruby_coderange_type cr)
Destructively modifies the passed object so that its (inline) code range is the passed one.
static enum ruby_coderange_type RB_ENC_CODERANGE(VALUE obj)
Queries the (inline) code range of the passed object.
static enum ruby_coderange_type RB_ENC_CODERANGE_AND(enum ruby_coderange_type a, enum ruby_coderange_type b)
"Mix" two code ranges into one.
static bool RB_ENC_CODERANGE_CLEAN_P(enum ruby_coderange_type cr)
Queries if a code range is "clean".
static bool RB_ENC_CODERANGE_ASCIIONLY(VALUE obj)
Queries the (inline) code range of the passed object is RUBY_ENC_CODERANGE_7BIT.
Defines RBIMPL_ATTR_CONST.
#define RBIMPL_ATTR_CONST()
Wraps (or simulates) __attribute__((const))
Tweaking visibility of C variables/functions.
#define RBIMPL_SYMBOL_EXPORT_END()
Counterpart of RBIMPL_SYMBOL_EXPORT_BEGIN.
#define RBIMPL_SYMBOL_EXPORT_BEGIN()
Shortcut macro equivalent to RUBY_SYMBOL_EXPORT_BEGIN extern "C" {.
Defines enum ruby_fl_type.
static VALUE RB_FL_TEST_RAW(VALUE obj, VALUE flags)
This is an implementation detail of RB_FL_TEST().
static void RB_FL_SET_RAW(VALUE obj, VALUE flags)
This is an implementation detail of RB_FL_SET().
static void RB_FL_UNSET_RAW(VALUE obj, VALUE flags)
This is an implementation detail of RB_FL_UNSET().
@ RUBY_FL_USER9
User-defined flag.
@ RUBY_FL_USER8
User-defined flag.
#define inline
Old Visual Studio versions do not support the inline keyword, so we need to define it to be __inline.
Defines RBIMPL_ATTR_PURE.
#define RBIMPL_ATTR_PURE_UNLESS_DEBUG()
Enables RBIMPL_ATTR_PURE if and only if.
uintptr_t VALUE
Type that represents a Ruby object.