Module: WinFFI::LibBase
- Extended by:
- FFI::Library
- Defined in:
- lib/win-ffi/core/lib_base.rb,
lib/win-ffi/core/lib_base.rb,
lib/win-ffi/core/typedef/core.rb
Class Method Summary collapse
Instance Method Summary collapse
- #define_prefix(prefix, target_enum, without_underscore = false) ⇒ Object
- #define_suffix(suffix, target_enum, without_underscore = false) ⇒ Object
- #encoded_function(name, *args, ruby_name: nil) ⇒ Object
Class Method Details
.extended(c) ⇒ Object
47 48 49 50 51 52 53 54 |
# File 'lib/win-ffi/core/lib_base.rb', line 47 def self.extended(c) c.extend FFI::Library instance_variables.each do |v| value = instance_variable_get(v) value = value.dup unless value.is_a?(Integer) || value.is_a?(Symbol) c.instance_variable_set(v, value) end end |
Instance Method Details
#define_prefix(prefix, target_enum, without_underscore = false) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/win-ffi/core/lib_base.rb', line 33 def define_prefix(prefix, target_enum, without_underscore = false) target_enum.to_h.each do |k, v| name = "#{prefix}#{without_underscore ? '' : '_'}#{k}" const_set(name, v) unless const_defined? name end end |
#define_suffix(suffix, target_enum, without_underscore = false) ⇒ Object
40 41 42 43 44 45 |
# File 'lib/win-ffi/core/lib_base.rb', line 40 def define_suffix(suffix, target_enum, without_underscore = false) target_enum.to_h.each do |k, v| name = "#{k}#{without_underscore ? '' : '_'}#{suffix}" const_set(name, v) unless const_defined? name end end |