summaryrefslogtreecommitdiff
path: root/spec/ruby/optional/capi/ext/constants_spec.c
blob: 27899ca4d9ba83f8752a350f3c82d302fa77b011 (plain)
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
#include "ruby.h"
#include "rubyspec.h"

#ifdef __cplusplus
extern "C" {
#endif

#define defconstfunc(name) \
static VALUE constants_spec_##name(VALUE self) { return name; }

defconstfunc(rb_cArray)
defconstfunc(rb_cBasicObject)
defconstfunc(rb_cBinding)
defconstfunc(rb_cClass)
defconstfunc(rb_cComplex)
defconstfunc(rb_mComparable)
#ifndef RUBY_VERSION_IS_3_0
defconstfunc(rb_cData)
#endif
defconstfunc(rb_cDir)
defconstfunc(rb_cEncoding)
defconstfunc(rb_mEnumerable)
defconstfunc(rb_cEnumerator)
defconstfunc(rb_cFalseClass)
defconstfunc(rb_cFile)
defconstfunc(rb_mFileTest)
defconstfunc(rb_cFloat)
defconstfunc(rb_mGC)
defconstfunc(rb_cHash)
defconstfunc(rb_cInteger)
defconstfunc(rb_cIO)
defconstfunc(rb_mKernel)
defconstfunc(rb_mMath)
defconstfunc(rb_cMatch)
defconstfunc(rb_cMethod)
defconstfunc(rb_cModule)
defconstfunc(rb_cNilClass)
defconstfunc(rb_cNumeric)
defconstfunc(rb_cObject)
defconstfunc(rb_cProc)
defconstfunc(rb_mProcess)
defconstfunc(rb_cRandom)
defconstfunc(rb_cRange)
defconstfunc(rb_cRational)
defconstfunc(rb_cRegexp)
defconstfunc(rb_cStat)
defconstfunc(rb_cString)
defconstfunc(rb_cStruct)
defconstfunc(rb_cSymbol)
defconstfunc(rb_cTime)
defconstfunc(rb_cThread)
defconstfunc(rb_cTrueClass)
defconstfunc(rb_cUnboundMethod)
defconstfunc(rb_eArgError)
defconstfunc(rb_eEncodingError)
defconstfunc(rb_eEncCompatError)
defconstfunc(rb_eEOFError)
defconstfunc(rb_mErrno)
defconstfunc(rb_eException)
defconstfunc(rb_eFatal)
defconstfunc(rb_eFloatDomainError)
#ifdef RUBY_VERSION_IS_2_5
defconstfunc(rb_eFrozenError)
#endif
defconstfunc(rb_eIndexError)
defconstfunc(rb_eInterrupt)
defconstfunc(rb_eIOError)
defconstfunc(rb_eKeyError)
defconstfunc(rb_eLoadError)
defconstfunc(rb_eLocalJumpError)
defconstfunc(rb_eMathDomainError)
defconstfunc(rb_eNameError)
defconstfunc(rb_eNoMemError)
defconstfunc(rb_eNoMethodError)
defconstfunc(rb_eNotImpError)
defconstfunc(rb_eRangeError)
defconstfunc(rb_eRegexpError)
defconstfunc(rb_eRuntimeError)
defconstfunc(rb_eScriptError)
defconstfunc(rb_eSecurityError)
defconstfunc(rb_eSignal)
defconstfunc(rb_eStandardError)
defconstfunc(rb_eStopIteration)
defconstfunc(rb_eSyntaxError)
defconstfunc(rb_eSystemCallError)
defconstfunc(rb_eSystemExit)
defconstfunc(rb_eSysStackError)
defconstfunc(rb_eTypeError)
defconstfunc(rb_eThreadError)
defconstfunc(rb_mWaitReadable)
defconstfunc(rb_mWaitWritable)
defconstfunc(rb_eZeroDivError)

void Init_constants_spec(void) {
  VALUE cls = rb_define_class("CApiConstantsSpecs", rb_cObject);
  rb_define_method(cls, "rb_cArray", constants_spec_rb_cArray, 0);
  rb_define_method(cls, "rb_cBasicObject", constants_spec_rb_cBasicObject, 0);
  rb_define_method(cls, "rb_cBinding", constants_spec_rb_cBinding, 0);
  rb_define_method(cls, "rb_cClass", constants_spec_rb_cClass, 0);
  rb_define_method(cls, "rb_cComplex", constants_spec_rb_cComplex, 0);
  rb_define_method(cls, "rb_mComparable", constants_spec_rb_mComparable, 0);
  #ifndef RUBY_VERSION_IS_3_0
  rb_define_method(cls, "rb_cData", constants_spec_rb_cData, 0);
  #endif
  rb_define_method(cls, "rb_cDir", constants_spec_rb_cDir, 0);
  rb_define_method(cls, "rb_cEncoding", constants_spec_rb_cEncoding, 0);
  rb_define_method(cls, "rb_mEnumerable", constants_spec_rb_mEnumerable, 0);
  rb_define_method(cls, "rb_cEnumerator", constants_spec_rb_cEnumerator, 0);
  rb_define_method(cls, "rb_cFalseClass", constants_spec_rb_cFalseClass, 0);
  rb_define_method(cls, "rb_cFile", constants_spec_rb_cFile, 0);
  rb_define_method(cls, "rb_mFileTest", constants_spec_rb_mFileTest, 0);
  rb_define_method(cls, "rb_cFloat", constants_spec_rb_cFloat, 0);
  rb_define_method(cls, "rb_mGC", constants_spec_rb_mGC, 0);
  rb_define_method(cls, "rb_cHash", constants_spec_rb_cHash, 0);
  rb_define_method(cls, "rb_cInteger", constants_spec_rb_cInteger, 0);
  rb_define_method(cls, "rb_cIO", constants_spec_rb_cIO, 0);
  rb_define_method(cls, "rb_mKernel", constants_spec_rb_mKernel, 0);
  rb_define_method(cls, "rb_mMath", constants_spec_rb_mMath, 0);
  rb_define_method(cls, "rb_cMatch", constants_spec_rb_cMatch, 0);
  rb_define_method(cls, "rb_cMethod", constants_spec_rb_cMethod, 0);
  rb_define_method(cls, "rb_cModule", constants_spec_rb_cModule, 0);
  rb_define_method(cls, "rb_cNilClass", constants_spec_rb_cNilClass, 0);
  rb_define_method(cls, "rb_cNumeric", constants_spec_rb_cNumeric, 0);
  rb_define_method(cls, "rb_cObject", constants_spec_rb_cObject, 0);
  rb_define_method(cls, "rb_cProc", constants_spec_rb_cProc, 0);
  rb_define_method(cls, "rb_mProcess", constants_spec_rb_mProcess, 0);
  rb_define_method(cls, "rb_cRandom", constants_spec_rb_cRandom, 0);
  rb_define_method(cls, "rb_cRange", constants_spec_rb_cRange, 0);
  rb_define_method(cls, "rb_cRational", constants_spec_rb_cRational, 0);
  rb_define_method(cls, "rb_cRegexp", constants_spec_rb_cRegexp, 0);
  rb_define_method(cls, "rb_cStat", constants_spec_rb_cStat, 0);
  rb_define_method(cls, "rb_cString", constants_spec_rb_cString, 0);
  rb_define_method(cls, "rb_cStruct", constants_spec_rb_cStruct, 0);
  rb_define_method(cls, "rb_cSymbol", constants_spec_rb_cSymbol, 0);
  rb_define_method(cls, "rb_cTime", constants_spec_rb_cTime, 0);
  rb_define_method(cls, "rb_cThread", constants_spec_rb_cThread, 0);
  rb_define_method(cls, "rb_cTrueClass", constants_spec_rb_cTrueClass, 0);
  rb_define_method(cls, "rb_cUnboundMethod", constants_spec_rb_cUnboundMethod, 0);
  rb_define_method(cls, "rb_eArgError", constants_spec_rb_eArgError, 0);
  rb_define_method(cls, "rb_eEncodingError", constants_spec_rb_eEncodingError, 0);
  rb_define_method(cls, "rb_eEncCompatError", constants_spec_rb_eEncCompatError, 0);
  rb_define_method(cls, "rb_eEOFError", constants_spec_rb_eEOFError, 0);
  rb_define_method(cls, "rb_mErrno", constants_spec_rb_mErrno, 0);
  rb_define_method(cls, "rb_eException", constants_spec_rb_eException, 0);
  rb_define_method(cls, "rb_eFatal", constants_spec_rb_eFatal, 0);
  rb_define_method(cls, "rb_eFloatDomainError", constants_spec_rb_eFloatDomainError, 0);
  #ifdef RUBY_VERSION_IS_2_5
  rb_define_method(cls, "rb_eFrozenError", constants_spec_rb_eFrozenError, 0);
  #endif
  rb_define_method(cls, "rb_eIndexError", constants_spec_rb_eIndexError, 0);
  rb_define_method(cls, "rb_eInterrupt", constants_spec_rb_eInterrupt, 0);
  rb_define_method(cls, "rb_eIOError", constants_spec_rb_eIOError, 0);
  rb_define_method(cls, "rb_eKeyError", constants_spec_rb_eKeyError, 0);
  rb_define_method(cls, "rb_eLoadError", constants_spec_rb_eLoadError, 0);
  rb_define_method(cls, "rb_eLocalJumpError", constants_spec_rb_eLocalJumpError, 0);
  rb_define_method(cls, "rb_eMathDomainError", constants_spec_rb_eMathDomainError, 0);
  rb_define_method(cls, "rb_eNameError", constants_spec_rb_eNameError, 0);
  rb_define_method(cls, "rb_eNoMemError", constants_spec_rb_eNoMemError, 0);
  rb_define_method(cls, "rb_eNoMethodError", constants_spec_rb_eNoMethodError, 0);
  rb_define_method(cls, "rb_eNotImpError", constants_spec_rb_eNotImpError, 0);
  rb_define_method(cls, "rb_eRangeError", constants_spec_rb_eRangeError, 0);
  rb_define_method(cls, "rb_eRegexpError", constants_spec_rb_eRegexpError, 0);
  rb_define_method(cls, "rb_eRuntimeError", constants_spec_rb_eRuntimeError, 0);
  rb_define_method(cls, "rb_eScriptError", constants_spec_rb_eScriptError, 0);
  rb_define_method(cls, "rb_eSecurityError", constants_spec_rb_eSecurityError, 0);
  rb_define_method(cls, "rb_eSignal", constants_spec_rb_eSignal, 0);
  rb_define_method(cls, "rb_eStandardError", constants_spec_rb_eStandardError, 0);
  rb_define_method(cls, "rb_eStopIteration", constants_spec_rb_eStopIteration, 0);
  rb_define_method(cls, "rb_eSyntaxError", constants_spec_rb_eSyntaxError, 0);
  rb_define_method(cls, "rb_eSystemCallError", constants_spec_rb_eSystemCallError, 0);
  rb_define_method(cls, "rb_eSystemExit", constants_spec_rb_eSystemExit, 0);
  rb_define_method(cls, "rb_eSysStackError", constants_spec_rb_eSysStackError, 0);
  rb_define_method(cls, "rb_eTypeError", constants_spec_rb_eTypeError, 0);
  rb_define_method(cls, "rb_eThreadError", constants_spec_rb_eThreadError, 0);
  rb_define_method(cls, "rb_mWaitReadable", constants_spec_rb_mWaitReadable, 0);
  rb_define_method(cls, "rb_mWaitWritable", constants_spec_rb_mWaitWritable, 0);
  rb_define_method(cls, "rb_eZeroDivError", constants_spec_rb_eZeroDivError, 0);
}

#ifdef __cplusplus
}
#endif