--- !ruby/object:RI::ClassDescription 
attributes: 
- !ruby/object:RI::Attribute 
  comment: 
  name: flags
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  name: init_extra
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  name: libs
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  name: mod
  rw: W
- !ruby/object:RI::Attribute 
  comment: 
  name: mod
  rw: R
- !ruby/object:RI::Attribute 
  comment: 
  name: rb_file
  rw: R
- !ruby/object:RI::Attribute 
  comment: 
  name: sig
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  name: src
  rw: RW
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: "Sets the name of the C struct for generating accessors. Used with #accessor, #reader, #writer."
  name: struct_name
  rw: RW
class_methods: 
- !ruby/object:RI::MethodSummary 
  name: new
comment: 
- !ruby/struct:SM::Flow::P 
  body: "Inline::C is the default builder used and the only one provided by Inline. It can be used as a template to write builders for other languages. It understands type-conversions for the basic types and can be extended as needed using #add_type_converter, #alias_type_converter and #remove_type_converter."
constants: 
- !ruby/object:RI::Constant 
  comment: 
  name: MAGIC_ARITY_THRESHOLD
  value: "15"
- !ruby/object:RI::Constant 
  comment: 
  name: MAGIC_ARITY
  value: "-1"
- !ruby/object:RI::Constant 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Default C to ruby and ruby to C type map
  name: TYPE_MAP
  value: "{       'char'               => [ 'NUM2CHR',        'CHR2FIX'      ],        'char *'             => [ 'StringValuePtr', 'rb_str_new2'  ],        'double'             => [ 'NUM2DBL',        'rb_float_new' ],        'int'                => [ \"FI\\X2INT\",       'INT2FIX'      ],       'unsigned int'       => [ 'NUM2UINT',       'UINT2NUM'     ],       'unsigned'           => [ 'NUM2UINT',       'UINT2NUM'     ],        'long'               => [ 'NUM2LONG',       'LONG2NUM'     ],       'unsigned long'      => [ 'NUM2ULONG',      'ULONG2NUM'    ],        'long long'          => [ 'NUM2LL',         'LL2NUM'       ],       'unsigned long long' => [ 'NUM2ULL',        'ULL2NUM'      ],        'off_t'              => [ 'NUM2OFFT',       'OFFT2NUM'     ],        'VALUE'              => [ '',               ''             ],       # Can't do these converters because they conflict with the above:       # ID2SYM(x), SYM2ID(x), F\\IX2UINT(x)     }"
full_name: C
includes: 
- !ruby/object:RI::IncludedModule 
  name: ZenTestMapping
instance_methods: 
- !ruby/object:RI::MethodSummary 
  name: accessor
- !ruby/object:RI::MethodSummary 
  name: add_compile_flags
- !ruby/object:RI::MethodSummary 
  name: add_link_flags
- !ruby/object:RI::MethodSummary 
  name: add_static
- !ruby/object:RI::MethodSummary 
  name: add_to_init
- !ruby/object:RI::MethodSummary 
  name: add_type_converter
- !ruby/object:RI::MethodSummary 
  name: alias_type_converter
- !ruby/object:RI::MethodSummary 
  name: build
- !ruby/object:RI::MethodSummary 
  name: c
- !ruby/object:RI::MethodSummary 
  name: c2ruby
- !ruby/object:RI::MethodSummary 
  name: c_raw
- !ruby/object:RI::MethodSummary 
  name: c_raw_singleton
- !ruby/object:RI::MethodSummary 
  name: c_singleton
- !ruby/object:RI::MethodSummary 
  name: crap_for_windoze
- !ruby/object:RI::MethodSummary 
  name: generate
- !ruby/object:RI::MethodSummary 
  name: generate_ext
- !ruby/object:RI::MethodSummary 
  name: include
- !ruby/object:RI::MethodSummary 
  name: include_ruby_last
- !ruby/object:RI::MethodSummary 
  name: load
- !ruby/object:RI::MethodSummary 
  name: load_cache
- !ruby/object:RI::MethodSummary 
  name: map_c_const
- !ruby/object:RI::MethodSummary 
  name: map_ruby_const
- !ruby/object:RI::MethodSummary 
  name: module_name
- !ruby/object:RI::MethodSummary 
  name: parse_signature
- !ruby/object:RI::MethodSummary 
  name: prefix
- !ruby/object:RI::MethodSummary 
  name: reader
- !ruby/object:RI::MethodSummary 
  name: remove_type_converter
- !ruby/object:RI::MethodSummary 
  name: ruby2c
- !ruby/object:RI::MethodSummary 
  name: so_name
- !ruby/object:RI::MethodSummary 
  name: strip_comments
- !ruby/object:RI::MethodSummary 
  name: writer
name: C
superclass: Object
