easy-swig 1.0

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.
Files changed (45) hide show
  1. checksums.yaml +15 -0
  2. data/MIT_LICENSE +19 -0
  3. data/README.md +86 -0
  4. data/lib/apinodes/api_attribute.rb +6 -0
  5. data/lib/apinodes/api_class.rb +207 -0
  6. data/lib/apinodes/api_enum.rb +10 -0
  7. data/lib/apinodes/api_function.rb +13 -0
  8. data/lib/apinodes/api_group.rb +13 -0
  9. data/lib/apinodes/api_method.rb +12 -0
  10. data/lib/apinodes/api_namespace.rb +104 -0
  11. data/lib/apinodes/api_node.rb +109 -0
  12. data/lib/apinodes/api_variable.rb +12 -0
  13. data/lib/apinodes/inc_file.rb +118 -0
  14. data/lib/config.rb +56 -0
  15. data/lib/csharp/csharp_features.rb +100 -0
  16. data/lib/csharp/generators/csharp_class_generator.rb +14 -0
  17. data/lib/csharp/generators/csharp_generator.rb +17 -0
  18. data/lib/csharp/generators/csharp_namespace_generator.rb +33 -0
  19. data/lib/easy-swig-cli.rb +143 -0
  20. data/lib/easy-swig.rb +71 -0
  21. data/lib/features.rb +39 -0
  22. data/lib/generators/class_generator.rb +209 -0
  23. data/lib/generators/generator.rb +124 -0
  24. data/lib/generators/generator_util.rb +135 -0
  25. data/lib/generators/hfile_generator.rb +56 -0
  26. data/lib/generators/namespace_generator.rb +58 -0
  27. data/lib/generators/properties.rb +13 -0
  28. data/lib/readers/csv_parser.rb +127 -0
  29. data/lib/tasks/doxygen_task.rb +28 -0
  30. data/lib/tasks/generate_task.rb +85 -0
  31. data/lib/tasks/hfiles_manager.rb +86 -0
  32. data/lib/tasks/swig_task.rb +69 -0
  33. data/lib/util/logger.rb +36 -0
  34. data/lib/util/print.rb +72 -0
  35. data/lib/util/query.rb +136 -0
  36. data/lib/util/utilities.rb +101 -0
  37. data/spec/accessors/accessors_spec.rb +45 -0
  38. data/spec/anonymousEnums/anonymous_enums_spec.rb +49 -0
  39. data/spec/friends/friends_spec.rb +45 -0
  40. data/spec/innerclasses/innerclasses_spec.rb +48 -0
  41. data/spec/namespacePrefixes/namespace_prefixes_spec.rb +39 -0
  42. data/spec/squish/squish_spec.rb +40 -0
  43. data/spec/subdirectories/subdirectories_spec.rb +41 -0
  44. data/spec/templates/templates_spec.rb +34 -0
  45. metadata +107 -0
metadata ADDED
@@ -0,0 +1,107 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: easy-swig
3
+ version: !ruby/object:Gem::Version
4
+ version: '1.0'
5
+ platform: ruby
6
+ authors:
7
+ - David Fuenmayor
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-02 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: ! " \nLibrary and CLI-Tool for automatic generation wrappers for C/C++
14
+ code using SWIG.\nThis is both a Ruby Gem and a CLI Tool. Feed it with a directory
15
+ containing the library's header files (the ones you want to wrap) and a CSV File
16
+ with basic configuration (see usage). EasySwig will generate the corresponding SWIG
17
+ interface files (.i) in an output directory. EasySwig also offers a facade allowing
18
+ you to directly call SWIG in order to generate wrappers in the target language.\n\nEasySwig
19
+ relies on the Doxyparser gem (https://github.com/davfuenmayor/ruby-doxygen-parser)
20
+ which on his part depends on Nokogiri (http://nokogiri.org) and Doxygen (www.doxygen.org).
21
+ Refer to Doxyparser for more information.\nFor using EasySwig you may also want
22
+ to install SWIG (http://www.swig.org/). Currently only SWIG version 2.0.11 is supported.
23
+ There is ongoing work on 3.0.0 version support.\n\nEasySwig supports currently
24
+ only C#. There is ongoing work on other languages support.\n\n"
25
+ email:
26
+ - davfuenmayor@gmail.com
27
+ executables: []
28
+ extensions: []
29
+ extra_rdoc_files: []
30
+ files:
31
+ - MIT_LICENSE
32
+ - README.md
33
+ - lib/apinodes/api_attribute.rb
34
+ - lib/apinodes/api_class.rb
35
+ - lib/apinodes/api_enum.rb
36
+ - lib/apinodes/api_function.rb
37
+ - lib/apinodes/api_group.rb
38
+ - lib/apinodes/api_method.rb
39
+ - lib/apinodes/api_namespace.rb
40
+ - lib/apinodes/api_node.rb
41
+ - lib/apinodes/api_variable.rb
42
+ - lib/apinodes/inc_file.rb
43
+ - lib/config.rb
44
+ - lib/csharp/csharp_features.rb
45
+ - lib/csharp/generators/csharp_class_generator.rb
46
+ - lib/csharp/generators/csharp_generator.rb
47
+ - lib/csharp/generators/csharp_namespace_generator.rb
48
+ - lib/easy-swig-cli.rb
49
+ - lib/easy-swig.rb
50
+ - lib/features.rb
51
+ - lib/generators/class_generator.rb
52
+ - lib/generators/generator.rb
53
+ - lib/generators/generator_util.rb
54
+ - lib/generators/hfile_generator.rb
55
+ - lib/generators/namespace_generator.rb
56
+ - lib/generators/properties.rb
57
+ - lib/readers/csv_parser.rb
58
+ - lib/tasks/doxygen_task.rb
59
+ - lib/tasks/generate_task.rb
60
+ - lib/tasks/hfiles_manager.rb
61
+ - lib/tasks/swig_task.rb
62
+ - lib/util/logger.rb
63
+ - lib/util/print.rb
64
+ - lib/util/query.rb
65
+ - lib/util/utilities.rb
66
+ - spec/accessors/accessors_spec.rb
67
+ - spec/anonymousEnums/anonymous_enums_spec.rb
68
+ - spec/friends/friends_spec.rb
69
+ - spec/innerclasses/innerclasses_spec.rb
70
+ - spec/namespacePrefixes/namespace_prefixes_spec.rb
71
+ - spec/squish/squish_spec.rb
72
+ - spec/subdirectories/subdirectories_spec.rb
73
+ - spec/templates/templates_spec.rb
74
+ homepage: http://github.com/davfuenmayor/easy-swig
75
+ licenses:
76
+ - MIT
77
+ metadata: {}
78
+ post_install_message:
79
+ rdoc_options: []
80
+ require_paths:
81
+ - lib
82
+ required_ruby_version: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
87
+ required_rubygems_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ! '>='
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ requirements: []
93
+ rubyforge_project:
94
+ rubygems_version: 2.2.2
95
+ signing_key:
96
+ specification_version: 4
97
+ summary: Library and CLI-Tool for automatic generation wrappers for C/C++ code using
98
+ SWIG
99
+ test_files:
100
+ - spec/squish/squish_spec.rb
101
+ - spec/subdirectories/subdirectories_spec.rb
102
+ - spec/templates/templates_spec.rb
103
+ - spec/friends/friends_spec.rb
104
+ - spec/accessors/accessors_spec.rb
105
+ - spec/innerclasses/innerclasses_spec.rb
106
+ - spec/namespacePrefixes/namespace_prefixes_spec.rb
107
+ - spec/anonymousEnums/anonymous_enums_spec.rb