Class: FFI::Tcl::PrettyStruct
- Inherits:
-
Struct
- Object
- Struct
- FFI::Tcl::PrettyStruct
show all
- Defined in:
- lib/ffi-tk/ffi/tcl/obj.rb
Overview
Nicer introspection and some accessors.
Constant Summary
collapse
- ACCESSOR_CODE =
<<-CODE
def {name}; self[{sym}]; end
def {name}=(value) self[{sym}] = value; end
CODE
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.layout(*kvs) ⇒ Object
11
12
13
14
15
16
17
|
# File 'lib/ffi-tk/ffi/tcl/obj.rb', line 11
def self.layout(*kvs)
kvs.each_slice(2) do |key, _value|
eval ACCESSOR_CODE.gsub(/\{(.*?)\}/, '{name}' => key, '{sym}' => ":#{key}")
end
super
end
|
Instance Method Details
19
20
21
22
23
|
# File 'lib/ffi-tk/ffi/tcl/obj.rb', line 19
def inspect
kvs = members.zip(values)
kvs.map! { |key, value| '%s=%s' % [key, value.inspect] }
'<%s %s>' % [self.class, kvs.join(' ')]
end
|