summaryrefslogtreecommitdiffstats
path: root/lib/efl/ffi/eina.rb
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2011-04-29 12:39:16 +0200
committerJérémy Zurcher <jeremy@asynk.ch>2011-04-29 12:39:16 +0200
commit308c072a8e809b5694225cb7fc29535f62bd6d3e (patch)
treec7da18408e061dbd59d1453939e00851be3d163e /lib/efl/ffi/eina.rb
parentb720587b2eb1e3e6b5fe6b6cfcca422fe3a215c8 (diff)
downloadffi-efl-308c072a8e809b5694225cb7fc29535f62bd6d3e.zip
ffi-efl-308c072a8e809b5694225cb7fc29535f62bd6d3e.tar.gz
regenerate lib/efl/ffi/*
Diffstat (limited to 'lib/efl/ffi/eina.rb')
-rw-r--r--lib/efl/ffi/eina.rb13
1 files changed, 8 insertions, 5 deletions
diff --git a/lib/efl/ffi/eina.rb b/lib/efl/ffi/eina.rb
index 6d09164..8ecfd4e 100644
--- a/lib/efl/ffi/eina.rb
+++ b/lib/efl/ffi/eina.rb
@@ -6,13 +6,15 @@ require 'efl/ffi'
module Efl
#
module Eina
+ #
+ extend Efl::FFIHelper
+ #
def self.method_missing m, *args, &block
- return Efl::FFI.send 'eina_'+m.to_s, *args, &block
+ sym = 'eina_'+m.to_s
+ raise NameError.new "#{self.name}.#{sym} (#{m})" if not self.respond_to? sym
+ self.module_eval "def self.#{m} *args, &block; r=self.#{sym}(*args); yield r if block_given?; r; end"
+ self.send sym, *args, &block
end
- end
- #
- module FFI
- #
#
ffi_lib 'eina'
#
@@ -39,6 +41,7 @@ module Efl
]
#
attach_fcts fcts
+ #
end
end
#