FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
mruby/include/mruby/string.h at master · xia0ta0/mruby · GitHub
xia0ta0
/
mruby
Public
forked from
mruby/mruby
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
mruby
/
include
/
mruby
/
string.h
Copy path
More file actions
More file actions
Latest commit
History
History
History
83 lines (70 loc) · 2.99 KB
Breadcrumbs
mruby
/
include
/
mruby
/
string.h
Copy path
File metadata and controls
83 lines (70 loc) · 2.99 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/*
** mruby/string.h - String class
**
** See Copyright Notice in mruby.h
*/
#ifndef
MRUBY_STRING_H
#define
MRUBY_STRING_H
#if
defined(
__cplusplus
)
extern
"C"
{
#endif
#define
IS_EVSTR
(
p
,
e
) ((p) < (e) && (*(p) == '$' || *(p) == '@' || *(p) == '{'))
extern
const
char
mrb_digitmap
[];
struct
RString
{
MRB_OBJECT_HEADER
;
mrb_int
len
;
union
{
mrb_int
capa
;
struct
mrb_shared_string
*
shared
;
}
aux
;
char
*
ptr
;
};
#define
mrb_str_ptr
(
s
) ((struct RString*)(mrb_ptr(s)))
#define
RSTRING
(
s
) ((struct RString*)(mrb_ptr(s)))
#define
RSTRING_PTR
(
s
) (RSTRING(s)->ptr)
#define
RSTRING_LEN
(
s
) (RSTRING(s)->len)
#define
RSTRING_CAPA
(
s
) (RSTRING(s)->aux.capa)
#define
RSTRING_END
(
s
) (RSTRING(s)->ptr + RSTRING(s)->len)
#define
MRB_STR_SHARED
1
#define
MRB_STR_NOFREE
2
void
mrb_gc_free_str
(
mrb_state
*
,
struct
RString
*
);
void
mrb_str_modify
(
mrb_state
*
,
struct
RString
*
);
mrb_value
mrb_str_literal
(
mrb_state
*
,
mrb_value
);
void
mrb_str_concat
(
mrb_state
*
,
mrb_value
,
mrb_value
);
mrb_value
mrb_str_plus
(
mrb_state
*
,
mrb_value
,
mrb_value
);
mrb_value
mrb_ptr_to_str
(
mrb_state
*
,
void
*
);
mrb_value
mrb_obj_as_string
(
mrb_state
*
mrb
,
mrb_value
obj
);
mrb_value
mrb_str_resize
(
mrb_state
*
mrb
,
mrb_value
str
,
mrb_int
len
);
mrb_value
mrb_str_substr
(
mrb_state
*
mrb
,
mrb_value
str
,
mrb_int
beg
,
mrb_int
len
);
mrb_value
mrb_string_type
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_check_string_type
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_str_buf_new
(
mrb_state
*
mrb
,
mrb_int
capa
);
mrb_value
mrb_str_buf_cat
(
mrb_state
*
mrb
,
mrb_value
str
,
const
char
*
ptr
,
size_t
len
);
char
*
mrb_string_value_cstr
(
mrb_state
*
mrb
,
mrb_value
*
ptr
);
char
*
mrb_string_value_ptr
(
mrb_state
*
mrb
,
mrb_value
ptr
);
int
mrb_str_offset
(
mrb_state
*
mrb
,
mrb_value
str
,
int
pos
);
mrb_value
mrb_str_dup
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_str_intern
(
mrb_state
*
mrb
,
mrb_value
self
);
mrb_value
mrb_str_cat_cstr
(
mrb_state
*
,
mrb_value
,
const
char
*
);
mrb_value
mrb_str_to_inum
(
mrb_state
*
mrb
,
mrb_value
str
,
int
base
,
int
badcheck
);
double
mrb_str_to_dbl
(
mrb_state
*
mrb
,
mrb_value
str
,
int
badcheck
);
mrb_value
mrb_str_to_str
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_int
mrb_str_hash
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_str_buf_append
(
mrb_state
*
mrb
,
mrb_value
str
,
mrb_value
str2
);
mrb_value
mrb_str_inspect
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_bool
mrb_str_equal
(
mrb_state
*
mrb
,
mrb_value
str1
,
mrb_value
str2
);
mrb_value
mrb_str_dump
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_str_cat
(
mrb_state
*
mrb
,
mrb_value
str
,
const
char
*
ptr
,
size_t
len
);
mrb_value
mrb_str_append
(
mrb_state
*
mrb
,
mrb_value
str
,
mrb_value
str2
);
int
mrb_str_cmp
(
mrb_state
*
mrb
,
mrb_value
str1
,
mrb_value
str2
);
char
*
mrb_str_to_cstr
(
mrb_state
*
mrb
,
mrb_value
str
);
mrb_value
mrb_str_pool
(
mrb_state
*
mrb
,
mrb_value
str
);
/* For backward compatibility */
static
inline
mrb_value
mrb_str_cat2
(
mrb_state
*
mrb
,
mrb_value
str
,
const
char
*
ptr
) {
return
mrb_str_cat_cstr
(
mrb
,
str
,
ptr
);
}
#if
defined(
__cplusplus
)
}
/* extern "C" { */
#endif
#endif
/* MRUBY_STRING_H */
Back
|
FazBrowse Home
|
New Git URL