Class: EasySwig::HFileGenerator
- Inherits:
-
Object
- Object
- EasySwig::HFileGenerator
show all
- Includes:
- GeneratorUtil
- Defined in:
- lib/generators/hfile_generator.rb
Instance Method Summary
collapse
#_process_type, #enum_snippet, #ignore_enum_values_snippet, #nested_workaround, #process_type, #template_snippet
Methods included from Query
#anonymous_enum?, #get_reference_type, #is_operator?, #is_template?, #is_template_param?, #lookup_typename, #method_has_blacklisted_types?, #name_for_friend, #name_for_operator, #name_for_template, #nested_typenames_for, #no_public_constructors?, #no_public_destructors?, #type_is_blacklisted?, #typename_is_blacklisted?
Methods included from Util
#del_prefix_class, #escape_all, #escape_const_ref_ptr, #escape_template, #gen_dir, #home_dir, #is_primitive?, #is_std?, #lib_dir, #logs_dir, #output_dir, #read_file, #rename_files, #swig_dir, #write_file
Constructor Details
Returns a new instance of HFileGenerator.
5
6
7
|
# File 'lib/generators/hfile_generator.rb', line 5
def initialize(hfile)
@hfile = hfile
end
|
Instance Method Details
#generate ⇒ Object
9
10
11
12
13
14
|
# File 'lib/generators/hfile_generator.rb', line 9
def generate
swig_file = generate_functions
swig_file << generate_variables
swig_file << generate_enums
swig_file << generate_classes
end
|
#generate_classes ⇒ Object
48
49
50
51
52
53
54
|
# File 'lib/generators/hfile_generator.rb', line 48
def generate_classes
swig_file = ''
@hfile.ignored_classes.each { |cls|
swig_file << %Q{%rename("$ignore") #{cls.name};} + "\n"
}
swig_file
end
|
#generate_enums ⇒ Object
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/generators/hfile_generator.rb', line 32
def generate_enums
swig_file = ''
@hfile.api_enums.each { |enum|
if anonymous_enum?(enum)
swig_file << enum_snippet(enum)
enum.values.each { |v|
swig_file << "%rename($ignore) ::#{v.basename};\n"
}
end
}
@hfile.ignored_enums.each { |enum|
swig_file << %Q{%rename("$ignore") #{enum.basename};} + "\n"
}
swig_file
end
|
#generate_functions ⇒ Object
16
17
18
19
20
21
22
|
# File 'lib/generators/hfile_generator.rb', line 16
def generate_functions
swig_file = ''
@hfile.ignored_functions.each { |func|
swig_file << %Q{%rename("$ignore") #{func.basename};} + "\n"
}
swig_file
end
|
#generate_variables ⇒ Object
24
25
26
27
28
29
30
|
# File 'lib/generators/hfile_generator.rb', line 24
def generate_variables
swig_file = ''
@hfile.ignored_variables.each { |var|
swig_file << %Q{%rename("$ignore") #{var.basename};} + "\n"
}
swig_file
end
|