ffi-efl 0.0.15 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Changelog CHANGED
@@ -1,6 +1,13 @@
1
- 2012-XX-YY Jérémy Zurcher <jeremy@asynk.ch>
1
+ 2012-12-21 Jérémy Zurcher <jeremy@asynk.ch>
2
+ * release 0.0.16
3
+ * add eina_file native binding
4
+ * add eio native binding
5
+ * add efreet native binding
6
+
7
+ 2012-11-29 Jérémy Zurcher <jeremy@asynk.ch>
2
8
  * release 0.0.15
3
9
  * add ethumb ethumb_client and ethumb_plugin
10
+ * spec fixes and various API updates
4
11
 
5
12
  2012-07-10 Jérémy Zurcher <jeremy@asynk.ch>
6
13
  * release 0.0.14
data/README.md CHANGED
@@ -4,12 +4,13 @@
4
4
 
5
5
  ## DESCRIPTION:
6
6
 
7
- A ruby-ffi binding to [efl](http://www.enlightenment.org/p.php?p=docs&l=en) libraries (Enlightenment Foundation Libraries).
7
+ A ruby ffi binding to [efl](http://www.enlightenment.org/p.php?p=docs&l=en) libraries (Enlightenment Foundation Libraries).
8
8
 
9
9
  ## FEATURES/PROBLEMS:
10
10
 
11
- * pretty young project ...
12
- * binding is complete but lacks ruby code and tests
11
+ * support ruby 1.9.x NOT 1.8.x
12
+ * support efl 1.7.3, NOT dev branch 1.8.x
13
+ * binding is almost complete but lacks high level ruby code and tests
13
14
 
14
15
  ## SYNOPSIS:
15
16
 
@@ -61,12 +62,13 @@ A ruby-ffi binding to [efl](http://www.enlightenment.org/p.php?p=docs&l=en) libr
61
62
 
62
63
  For more examples you may look at:
63
64
 
64
- * the [spec/](https://github.com/jeremyz/ffi-efl/tree/master/spec) and [test/](https://github.com/jeremyz/ffi-efl/tree/master/test) folders
65
+ * the [test/](https://github.com/jeremyz/ffi-efl/tree/master/test) and [spec/](https://github.com/jeremyz/ffi-efl/tree/master/spec) subdirs
65
66
 
66
67
  ## REQUIREMENTS:
67
68
 
68
69
  * You need a sane enlightenment foundation libraries installation,
69
- for this you might like to use [easy_e17.sh](http://omicron.homeip.net/projects/#easy_e17.sh),
70
+ for this you might like to use [build_efl_stable.sh](https://github.com/jeremyz/bin/blob/master/build_efl_stable.sh).
71
+ or the heavy metal [easy_e17.sh](http://omicron.homeip.net/projects/#easy_e17.sh),
70
72
  or my git aware fork [easy_e17.sh](https://github.com/jeremyz/bin/blob/master/easy_e17.sh).
71
73
 
72
74
  ## DOWNLOAD/INSTALL:
@@ -79,7 +81,7 @@ or from the git repository on github:
79
81
 
80
82
  git clone git://github.com/jeremyz/ffi-efl.git
81
83
  cd ffi-efl
82
- rake gem:install
84
+ rake install
83
85
 
84
86
  ## RESOURCES:
85
87
 
@@ -88,7 +90,7 @@ You can find this project in a few places:
88
90
  Online repositories:
89
91
 
90
92
  * https://github.com/jeremyz/ffi-efl
91
- * http://cgit.asynk.ch/cgi-bin/cgit/ffi-efl/
93
+ * http://cgit.asynk.ch/ffi-efl/
92
94
 
93
95
  Gem:
94
96
 
data/Rakefile CHANGED
@@ -1,6 +1,11 @@
1
1
  require 'bundler/gem_tasks'
2
2
 
3
- require 'rspec/core/rake_task'
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+ rescue LoadError
6
+ puts "missing bundler gem, you should\n$ gem install bundler"
7
+ exit 1
8
+ end
4
9
  RSpec::Core::RakeTask.new
5
10
 
6
11
  task :default => :spec
data/lib/efl.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  #
4
4
  module Efl
5
5
  #
6
- VERSION = '0.0.15'
6
+ VERSION = '0.0.16'
7
7
  #
8
8
  module MethodResolver
9
9
  def self.resolve mod, meth, prefix
@@ -0,0 +1,46 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native'
5
+ #
6
+ module Efl
7
+ #
8
+ module Efreet
9
+ #
10
+ FCT_PREFIX = 'efreet_' unless const_defined? :FCT_PREFIX
11
+ #
12
+ def self.method_missing meth, *args, &block
13
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
14
+ self.send sym, *args, &block
15
+ end
16
+ #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ ffi_lib 'efreet'
22
+ #
23
+ # TYPEDEFS
24
+ # typedef struct _Efreet_Version Efreet_Version;
25
+ typedef :pointer, :efreet_version
26
+ #
27
+ # VARIABLES
28
+ # EAPI extern Efreet_Version *efreet_version;
29
+ attach_variable :efreet_version, :efreet_version
30
+ #
31
+ # FUNCTIONS
32
+ fcts = [
33
+ # EAPI int efreet_init(void);
34
+ [ :efreet_init, [ ], :int ],
35
+ # EAPI int efreet_shutdown(void);
36
+ [ :efreet_shutdown, [ ], :int ],
37
+ # EAPI void efreet_lang_reset(void);
38
+ [ :efreet_lang_reset, [ ], :void ],
39
+ ]
40
+ #
41
+ attach_fcts fcts
42
+ #
43
+ end
44
+ end
45
+ #
46
+ # EOF
@@ -0,0 +1,51 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native'
5
+ require 'efl/native/eina_list'
6
+ #
7
+ module Efl
8
+ #
9
+ module EfreetBase
10
+ #
11
+ FCT_PREFIX = 'efreet_base_' unless const_defined? :FCT_PREFIX
12
+ #
13
+ def self.method_missing meth, *args, &block
14
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
15
+ self.send sym, *args, &block
16
+ end
17
+ #
18
+ end
19
+ #
20
+ module Native
21
+ #
22
+ ffi_lib 'efreet'
23
+ #
24
+ # TYPEDEFS
25
+ # typedef struct _Efreet_Event_Cache_Update Efreet_Event_Cache_Update;
26
+ typedef :pointer, :efreet_event_cache_update
27
+ #
28
+ # FUNCTIONS
29
+ fcts = [
30
+ # EAPI const char *efreet_data_home_get(void);
31
+ [ :efreet_data_home_get, [ ], :string ],
32
+ # EAPI Eina_List *efreet_data_dirs_get(void);
33
+ [ :efreet_data_dirs_get, [ ], :eina_list ],
34
+ # EAPI const char *efreet_config_home_get(void);
35
+ [ :efreet_config_home_get, [ ], :string ],
36
+ # EAPI const char *efreet_desktop_dir_get(void);
37
+ [ :efreet_desktop_dir_get, [ ], :string ],
38
+ # EAPI Eina_List *efreet_config_dirs_get(void);
39
+ [ :efreet_config_dirs_get, [ ], :eina_list ],
40
+ # EAPI const char *efreet_cache_home_get(void);
41
+ [ :efreet_cache_home_get, [ ], :string ],
42
+ # EAPI const char *efreet_hostname_get(void);
43
+ [ :efreet_hostname_get, [ ], :string ],
44
+ ]
45
+ #
46
+ attach_fcts fcts
47
+ #
48
+ end
49
+ end
50
+ #
51
+ # EOF
@@ -0,0 +1,112 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native'
5
+ require 'efl/native/eina_list'
6
+ #
7
+ module Efl
8
+ #
9
+ module EfreetDesktop
10
+ #
11
+ FCT_PREFIX = 'efreet_desktop_' unless const_defined? :FCT_PREFIX
12
+ #
13
+ def self.method_missing meth, *args, &block
14
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
15
+ self.send sym, *args, &block
16
+ end
17
+ #
18
+ end
19
+ #
20
+ module Native
21
+ #
22
+ ffi_lib 'efreet'
23
+ #
24
+ # TYPEDEFS
25
+ # typedef struct _Efreet_Desktop Efreet_Desktop;
26
+ typedef :pointer, :efreet_desktop
27
+ #
28
+ # CALLBACKS
29
+ # typedef void *(*Efreet_Desktop_Command_Cb) (void *data, Efreet_Desktop *desktop, char *command, int remaining);
30
+ callback :efreet_desktop_command_cb, [ :pointer, :efreet_desktop, :string, :int ], :pointer
31
+ # typedef int (*Efreet_Desktop_Progress_Cb) (void *data, Efreet_Desktop *desktop, char *uri, long int total, long int current);
32
+ callback :efreet_desktop_progress_cb, [ :pointer, :efreet_desktop, :string, :long, :long ], :int
33
+ # typedef void *(*Efreet_Desktop_Type_Parse_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini);
34
+ callback :efreet_desktop_type_parse_cb, [ :efreet_desktop, :pointer ], :pointer
35
+ # typedef void (*Efreet_Desktop_Type_Save_Cb) (Efreet_Desktop *desktop, Efreet_Ini *ini);
36
+ callback :efreet_desktop_type_save_cb, [ :efreet_desktop, :pointer ], :void
37
+ # typedef void *(*Efreet_Desktop_Type_Free_Cb) (void *data);
38
+ callback :efreet_desktop_type_free_cb, [ :pointer ], :pointer
39
+ #
40
+ # VARIABLES
41
+ # EAPI extern int EFREET_DESKTOP_TYPE_APPLICATION;
42
+ attach_variable :EFREET_DESKTOP_TYPE_APPLICATION, :int
43
+ # EAPI extern int EFREET_DESKTOP_TYPE_LINK;
44
+ attach_variable :EFREET_DESKTOP_TYPE_LINK, :int
45
+ # EAPI extern int EFREET_DESKTOP_TYPE_DIRECTORY;
46
+ attach_variable :EFREET_DESKTOP_TYPE_DIRECTORY, :int
47
+ # EAPI extern int EFREET_EVENT_DESKTOP_CACHE_UPDATE;
48
+ attach_variable :EFREET_EVENT_DESKTOP_CACHE_UPDATE, :int
49
+ # EAPI extern int EFREET_EVENT_DESKTOP_CACHE_BUILD;
50
+ attach_variable :EFREET_EVENT_DESKTOP_CACHE_BUILD, :int
51
+ #
52
+ # FUNCTIONS
53
+ fcts = [
54
+ # EAPI Efreet_Desktop *efreet_desktop_get(const char *file);
55
+ [ :efreet_desktop_get, [ :string ], :efreet_desktop ],
56
+ # EAPI int efreet_desktop_ref(Efreet_Desktop *desktop);
57
+ [ :efreet_desktop_ref, [ :efreet_desktop ], :int ],
58
+ # EAPI Efreet_Desktop *efreet_desktop_empty_new(const char *file);
59
+ [ :efreet_desktop_empty_new, [ :string ], :efreet_desktop ],
60
+ # EAPI Efreet_Desktop *efreet_desktop_new(const char *file);
61
+ [ :efreet_desktop_new, [ :string ], :efreet_desktop ],
62
+ # EAPI Efreet_Desktop *efreet_desktop_uncached_new(const char *file);
63
+ [ :efreet_desktop_uncached_new, [ :string ], :efreet_desktop ],
64
+ # EAPI void efreet_desktop_free(Efreet_Desktop *desktop);
65
+ [ :efreet_desktop_free, [ :efreet_desktop ], :void ],
66
+ # EAPI int efreet_desktop_save(Efreet_Desktop *desktop);
67
+ [ :efreet_desktop_save, [ :efreet_desktop ], :int ],
68
+ # EAPI int efreet_desktop_save_as(Efreet_Desktop *desktop, const char *file);
69
+ [ :efreet_desktop_save_as, [ :efreet_desktop, :string ], :int ],
70
+ # EAPI void efreet_desktop_exec(Efreet_Desktop *desktop, Eina_List *files, void *data);
71
+ [ :efreet_desktop_exec, [ :efreet_desktop, :eina_list, :pointer ], :void ],
72
+ # EAPI void efreet_desktop_environment_set(const char *environment);
73
+ [ :efreet_desktop_environment_set, [ :string ], :void ],
74
+ # EAPI const char *efreet_desktop_environment_get(void);
75
+ [ :efreet_desktop_environment_get, [ ], :string ],
76
+ # EAPI void *efreet_desktop_command_progress_get(Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb cb_command, Efreet_Desktop_Progress_Cb cb_prog, void *data);
77
+ [ :efreet_desktop_command_progress_get, [ :efreet_desktop, :eina_list, :efreet_desktop_command_cb, :efreet_desktop_progress_cb, :pointer ],
78
+ :pointer ],
79
+ # EAPI void *efreet_desktop_command_get(Efreet_Desktop *desktop, Eina_List *files, Efreet_Desktop_Command_Cb func, void *data);
80
+ [ :efreet_desktop_command_get, [ :efreet_desktop, :eina_list, :efreet_desktop_command_cb, :pointer ], :pointer ],
81
+ # EAPI Eina_List * efreet_desktop_command_local_get(Efreet_Desktop *desktop, Eina_List *files);
82
+ [ :efreet_desktop_command_local_get, [ :efreet_desktop, :eina_list ], :eina_list ],
83
+ # EAPI unsigned int efreet_desktop_category_count_get(Efreet_Desktop *desktop);
84
+ [ :efreet_desktop_category_count_get, [ :efreet_desktop ], :uint ],
85
+ # EAPI void efreet_desktop_category_add(Efreet_Desktop *desktop, const char *category);
86
+ [ :efreet_desktop_category_add, [ :efreet_desktop, :string ], :void ],
87
+ # EAPI int efreet_desktop_category_del(Efreet_Desktop *desktop, const char *category);
88
+ [ :efreet_desktop_category_del, [ :efreet_desktop, :string ], :int ],
89
+ # EAPI int efreet_desktop_type_add(const char *type, Efreet_Desktop_Type_Parse_Cb parse_func, Efreet_Desktop_Type_Save_Cb save_func, Efreet_Desktop_Type_Free_Cb free_func);
90
+ [ :efreet_desktop_type_add, [ :string, :efreet_desktop_type_parse_cb, :efreet_desktop_type_save_cb, :efreet_desktop_type_free_cb ], :int ],
91
+ # EAPI int efreet_desktop_type_alias (int from_type, const char *alias);
92
+ [ :efreet_desktop_type_alias, [ :int, :string ], :int ],
93
+ # EAPI void *efreet_desktop_type_data_get(Efreet_Desktop *desktop);
94
+ [ :efreet_desktop_type_data_get, [ :efreet_desktop ], :pointer ],
95
+ # EAPI Eina_List *efreet_desktop_string_list_parse(const char *string);
96
+ [ :efreet_desktop_string_list_parse, [ :string ], :eina_list ],
97
+ # EAPI char *efreet_desktop_string_list_join(Eina_List *list);
98
+ [ :efreet_desktop_string_list_join, [ :eina_list ], :string ],
99
+ # EAPI Eina_Bool efreet_desktop_x_field_set(Efreet_Desktop *desktop, const char *key, const char *data);
100
+ [ :efreet_desktop_x_field_set, [ :efreet_desktop, :string, :string ], :bool ],
101
+ # EAPI const char * efreet_desktop_x_field_get(Efreet_Desktop *desktop, const char *key);
102
+ [ :efreet_desktop_x_field_get, [ :efreet_desktop, :string ], :string ],
103
+ # EAPI Eina_Bool efreet_desktop_x_field_del(Efreet_Desktop *desktop, const char *key);
104
+ [ :efreet_desktop_x_field_del, [ :efreet_desktop, :string ], :bool ],
105
+ ]
106
+ #
107
+ attach_fcts fcts
108
+ #
109
+ end
110
+ end
111
+ #
112
+ # EOF
@@ -0,0 +1,77 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native'
5
+ require 'efl/native/eina_list'
6
+ #
7
+ module Efl
8
+ #
9
+ module EfreetIcon
10
+ #
11
+ FCT_PREFIX = 'efreet_icon_' unless const_defined? :FCT_PREFIX
12
+ #
13
+ def self.method_missing meth, *args, &block
14
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
15
+ self.send sym, *args, &block
16
+ end
17
+ #
18
+ end
19
+ #
20
+ module Native
21
+ #
22
+ ffi_lib 'efreet'
23
+ #
24
+ # ENUMS
25
+ # typedef enum Efreet_Icon_Theme_Context {...} Efreet_Icon_Theme_Context;
26
+ enum :efreet_icon_theme_context, [ :efreet_icon_theme_context_none, :efreet_icon_theme_context_actions, :efreet_icon_theme_context_devices,
27
+ :efreet_icon_theme_context_filesystems, :efreet_icon_theme_context_mimetypes ]
28
+ # typedef enum Efreet_Icon_Size_Type {...} Efreet_Icon_Size_Type;
29
+ enum :efreet_icon_size_type, [ :efreet_icon_size_type_none, :efreet_icon_size_type_fixed, :efreet_icon_size_type_scalable,
30
+ :efreet_icon_size_type_threshold ]
31
+ #
32
+ # TYPEDEFS
33
+ # typedef struct Efreet_Icon_Theme Efreet_Icon_Theme;
34
+ typedef :pointer, :efreet_icon_theme
35
+ # typedef struct Efreet_Icon_Theme_Directory Efreet_Icon_Theme_Directory;
36
+ typedef :pointer, :efreet_icon_theme_directory
37
+ # typedef struct Efreet_Icon Efreet_Icon;
38
+ typedef :pointer, :efreet_icon
39
+ # typedef struct Efreet_Icon_Point Efreet_Icon_Point;
40
+ typedef :pointer, :efreet_icon_point
41
+ #
42
+ # VARIABLES
43
+ # EAPI extern int EFREET_EVENT_ICON_CACHE_UPDATE;
44
+ attach_variable :EFREET_EVENT_ICON_CACHE_UPDATE, :int
45
+ #
46
+ # FUNCTIONS
47
+ fcts = [
48
+ # EAPI const char *efreet_icon_user_dir_get(void);
49
+ [ :efreet_icon_user_dir_get, [ ], :string ],
50
+ # EAPI const char *efreet_icon_deprecated_user_dir_get(void);
51
+ [ :efreet_icon_deprecated_user_dir_get, [ ], :string ],
52
+ # EAPI void efreet_icon_extension_add(const char *ext);
53
+ [ :efreet_icon_extension_add, [ :string ], :void ],
54
+ # EAPI Eina_List **efreet_icon_extra_list_get(void);
55
+ [ :efreet_icon_extra_list_get, [ ], :eina_list ],
56
+ # EAPI Eina_List *efreet_icon_extensions_list_get(void);
57
+ [ :efreet_icon_extensions_list_get, [ ], :eina_list ],
58
+ # EAPI Eina_List *efreet_icon_theme_list_get(void);
59
+ [ :efreet_icon_theme_list_get, [ ], :eina_list ],
60
+ # EAPI Efreet_Icon_Theme *efreet_icon_theme_find(const char *theme_name);
61
+ [ :efreet_icon_theme_find, [ :string ], :efreet_icon_theme ],
62
+ # EAPI Efreet_Icon *efreet_icon_find(const char *theme_name, const char *icon, unsigned int size);
63
+ [ :efreet_icon_find, [ :string, :string, :uint ], :efreet_icon ],
64
+ # EAPI const char *efreet_icon_list_find(const char *theme_name, Eina_List *icons, unsigned int size);
65
+ [ :efreet_icon_list_find, [ :string, :eina_list, :uint ], :string ],
66
+ # EAPI const char *efreet_icon_path_find(const char *theme_name, const char *icon, unsigned int size);
67
+ [ :efreet_icon_path_find, [ :string, :string, :uint ], :string ],
68
+ # EAPI void efreet_icon_free(Efreet_Icon *icon);
69
+ [ :efreet_icon_free, [ :efreet_icon ], :void ],
70
+ ]
71
+ #
72
+ attach_fcts fcts
73
+ #
74
+ end
75
+ end
76
+ #
77
+ # EOF
@@ -0,0 +1,68 @@
1
+ #! /usr/bin/env ruby
2
+ # -*- coding: UTF-8 -*-
3
+ #
4
+ require 'efl/native'
5
+ #
6
+ module Efl
7
+ #
8
+ module EfreetIni
9
+ #
10
+ FCT_PREFIX = 'efreet_ini_' unless const_defined? :FCT_PREFIX
11
+ #
12
+ def self.method_missing meth, *args, &block
13
+ sym = Efl::MethodResolver.resolve self, meth, FCT_PREFIX
14
+ self.send sym, *args, &block
15
+ end
16
+ #
17
+ end
18
+ #
19
+ module Native
20
+ #
21
+ ffi_lib 'efreet'
22
+ #
23
+ # TYPEDEFS
24
+ # typedef struct Efreet_Ini Efreet_Ini;
25
+ typedef :pointer, :efreet_ini
26
+ #
27
+ # FUNCTIONS
28
+ fcts = [
29
+ # EAPI Efreet_Ini *efreet_ini_new(const char *file);
30
+ [ :efreet_ini_new, [ :string ], :efreet_ini ],
31
+ # EAPI void efreet_ini_free(Efreet_Ini *ini);
32
+ [ :efreet_ini_free, [ :efreet_ini ], :void ],
33
+ # EAPI int efreet_ini_save(Efreet_Ini *ini, const char *path);
34
+ [ :efreet_ini_save, [ :efreet_ini, :string ], :int ],
35
+ # EAPI int efreet_ini_section_set(Efreet_Ini *ini, const char *section);
36
+ [ :efreet_ini_section_set, [ :efreet_ini, :string ], :int ],
37
+ # EAPI void efreet_ini_section_add(Efreet_Ini *ini, const char *section);
38
+ [ :efreet_ini_section_add, [ :efreet_ini, :string ], :void ],
39
+ # EAPI const char *efreet_ini_string_get(Efreet_Ini *ini, const char *key);
40
+ [ :efreet_ini_string_get, [ :efreet_ini, :string ], :string ],
41
+ # EAPI void efreet_ini_string_set(Efreet_Ini *ini, const char *key, const char *value);
42
+ [ :efreet_ini_string_set, [ :efreet_ini, :string, :string ], :void ],
43
+ # EAPI const char *efreet_ini_localestring_get(Efreet_Ini *ini, const char *key);
44
+ [ :efreet_ini_localestring_get, [ :efreet_ini, :string ], :string ],
45
+ # EAPI void efreet_ini_localestring_set(Efreet_Ini *ini, const char *key, const char *value);
46
+ [ :efreet_ini_localestring_set, [ :efreet_ini, :string, :string ], :void ],
47
+ # EAPI unsigned int efreet_ini_boolean_get(Efreet_Ini *ini, const char *key);
48
+ [ :efreet_ini_boolean_get, [ :efreet_ini, :string ], :uint ],
49
+ # EAPI void efreet_ini_boolean_set(Efreet_Ini *ini, const char *key, unsigned int value);
50
+ [ :efreet_ini_boolean_set, [ :efreet_ini, :string, :uint ], :void ],
51
+ # EAPI int efreet_ini_int_get(Efreet_Ini *ini, const char *key);
52
+ [ :efreet_ini_int_get, [ :efreet_ini, :string ], :int ],
53
+ # EAPI void efreet_ini_int_set(Efreet_Ini *ini, const char *key, int value);
54
+ [ :efreet_ini_int_set, [ :efreet_ini, :string, :int ], :void ],
55
+ # EAPI double efreet_ini_double_get(Efreet_Ini *ini, const char *key);
56
+ [ :efreet_ini_double_get, [ :efreet_ini, :string ], :double ],
57
+ # EAPI void efreet_ini_double_set(Efreet_Ini *ini, const char *key, double value);
58
+ [ :efreet_ini_double_set, [ :efreet_ini, :string, :double ], :void ],
59
+ # EAPI void efreet_ini_key_unset(Efreet_Ini *ini, const char *key);
60
+ [ :efreet_ini_key_unset, [ :efreet_ini, :string ], :void ],
61
+ ]
62
+ #
63
+ attach_fcts fcts
64
+ #
65
+ end
66
+ end
67
+ #
68
+ # EOF