Ruby  2.5.0dev(2017-10-22revision60238)
Macros | Functions | Variables
escape.c File Reference
#include "ruby.h"
#include "ruby/encoding.h"

Go to the source code of this file.

Macros

#define lower_hexdigits   (ruby_hexdigits+0)
 
#define upper_hexdigits   (ruby_hexdigits+16)
 
#define char_to_number(c)   ruby_digit36_to_number_table[(unsigned char)(c)]
 
#define MATCH(s)
 

Functions

RUBY_EXTERN unsigned long ruby_scan_digits (const char *str, ssize_t len, int base, size_t *retlen, int *overflow)
 
void Init_escape (void)
 
void InitVM_escape (void)
 

Variables

RUBY_EXTERN const char ruby_hexdigits []
 
RUBY_EXTERN const signed char ruby_digit36_to_number_table []
 

Macro Definition Documentation

◆ char_to_number

#define char_to_number (   c)    ruby_digit36_to_number_table[(unsigned char)(c)]

Definition at line 9 of file escape.c.

◆ lower_hexdigits

#define lower_hexdigits   (ruby_hexdigits+0)

Definition at line 7 of file escape.c.

◆ MATCH

#define MATCH (   s)
Value:
(len - i >= (int)rb_strlen_lit(s) && \
memcmp(&cstr[i], s, rb_strlen_lit(s)) == 0 && \
(i += rb_strlen_lit(s) - 1, 1))
#define rb_strlen_lit(str)
Definition: intern.h:845
register unsigned int len
Definition: zonetab.h:51

◆ upper_hexdigits

#define upper_hexdigits   (ruby_hexdigits+16)

Definition at line 8 of file escape.c.

Function Documentation

◆ Init_escape()

void Init_escape ( void  )

Definition at line 404 of file escape.c.

◆ InitVM_escape()

void InitVM_escape ( void  )

Definition at line 411 of file escape.c.

◆ ruby_scan_digits()

RUBY_EXTERN unsigned long ruby_scan_digits ( const char *  str,
ssize_t  len,
int  base,
size_t *  retlen,
int *  overflow 
)

Definition at line 84 of file util.c.

Variable Documentation

◆ ruby_digit36_to_number_table

RUBY_EXTERN const signed char ruby_digit36_to_number_table[]

Definition at line 6 of file escape.c.

◆ ruby_hexdigits

RUBY_EXTERN const char ruby_hexdigits[]

Definition at line 5 of file escape.c.