1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/spec/ruby/optional/capi
2020-01-28 20:47:48 +01:00
..
ext Update to ruby/spec@f8a2d54 2020-01-28 20:47:48 +01:00
fixtures
array_spec.rb Update to ruby/spec@4eec3dc 2019-11-30 21:26:52 +01:00
bignum_spec.rb
boolean_spec.rb
class_spec.rb
complex_spec.rb
constants_spec.rb
data_spec.rb
encoding_spec.rb Freeze Regexp literals 2020-01-15 10:38:47 +09:00
enumerator_spec.rb
exception_spec.rb
file_spec.rb
fixnum_spec.rb
float_spec.rb
gc_spec.rb Update to ruby/spec@d419e74 2019-12-27 16:46:08 +01:00
globals_spec.rb
hash_spec.rb Update to ruby/spec@f8a2d54 2020-01-28 20:47:48 +01:00
integer_spec.rb
io_spec.rb Update to ruby/spec@d419e74 2019-12-27 16:46:08 +01:00
kernel_spec.rb Update to ruby/spec@f8a2d54 2020-01-28 20:47:48 +01:00
marshal_spec.rb
module_spec.rb
mutex_spec.rb
numeric_spec.rb
object_spec.rb Update to ruby/spec@f8a2d54 2020-01-28 20:47:48 +01:00
proc_spec.rb
rake_helper.rb
range_spec.rb
rational_spec.rb
README
regexp_spec.rb
spec_helper.rb
st_spec.rb
string_spec.rb Update to ruby/spec@4eec3dc 2019-11-30 21:26:52 +01:00
struct_spec.rb
symbol_spec.rb Update to ruby/spec@d419e74 2019-12-27 16:46:08 +01:00
thread_spec.rb MinGW on Actions (#2791) 2019-12-30 23:19:31 -08:00
time_spec.rb
typed_data_spec.rb
util_spec.rb Update specs for keyword argument separation 2020-01-02 18:40:45 -08:00

C-API Specs

These specs test the C-API from Ruby. The following are conventions for the
specs:

1.  Put specs for functions related to a Ruby class in a file named according
    to the class. For example, for rb_ary_new function, put the specs in
    optional/capi/array_spec.rb
2.  Put the C file containing the C functions for array_spec.rb in
    optional/capi/ext/array_spec.c
3.  Add a '#define HAVE_RB_ARY_NEW  1' to rubyspec.h
4.  Name the C extension class 'CApiArraySpecs'.
5.  Name the C functions 'array_spec_rb_ary_new'.
6.  Wrap the code in the optional/capi/ext/array_spec.c in
    '#ifdef HAVE_RB_ARY_NEW'
7.  Attach the C function to the class using the name 'rb_ary_new'