codegen 0.0.4 → 0.0.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d0b58cc33ca1e7f1b22e8dd362633a7444549f29
4
- data.tar.gz: 4a8612e636bb5a9691912fa8655ac63b3086ecc4
3
+ metadata.gz: 93bf3fcac690b8c8b8d66fe1a280dce13b17fca7
4
+ data.tar.gz: 2c81da512687e32c1348803a627e2dda5495885f
5
5
  SHA512:
6
- metadata.gz: 4df1d0a09d4aa33133d4310a96c2cc2468e81865f48bae77ae0937145e2ff24f1624ecce52e70995ec386eb649cf04d26bcc84f82ba08a66861a0f2f92a09907
7
- data.tar.gz: 981bc92c47980c0be407cec0ac3ab6d6e63c9a98499137822af7031c639bb58a36504514b1001b0425bfdbd3debf78a9758dddc5565a2766dca19e31457a9ac3
6
+ metadata.gz: 08da35d85433ec26f4bc93a9c7b9c9d75af59d468c36ca90eb3f83c49c04ae0869de8de2c813287f6605ccaac847cf8e3c1735854108b2e4abecbe665f4806f2
7
+ data.tar.gz: b708ff6ee6eb9d25936a9b041ff428d1dea5c92f8389bbd0a657ec550ae589b3a71596c66c03d974a57d8b213832326b92dcb27a0a0154c753146dac69d7fc45
@@ -18,30 +18,30 @@ module Codegen
18
18
  def convert_entity options
19
19
  models = options[:models] || collect_all_models
20
20
  models_and_methods = models.map { |model|
21
- {
22
- begin
21
+ begin
22
+ {
23
23
  model => {
24
24
  methods: model_methods(model),
25
25
  relations: model_relations(model)
26
26
  }
27
- rescue Exception => e
28
- nil
29
- end
27
+ }
28
+ rescue Exception => e
29
+ nil
30
+ end
31
+ }.filter { |x| x.nil? }
32
+
33
+ models_and_methods.map { |mm|
34
+ model_to_entity(mm)
30
35
  }
31
- }.filter { |x| x.nil? }
36
+ end
32
37
 
33
- models_and_methods.map { |mm|
34
- model_to_entity(mm)
35
- }
36
- end
37
-
38
- def model_to_entity mm
39
- model = mm.keys.first
40
- methods = mm[model][:methods]
41
- relations = mm[model][:relations]
42
-
43
- normalized_relations = relations.map { |relation|
44
- case relation[:type]
38
+ def model_to_entity mm
39
+ model = mm.keys.first
40
+ methods = mm[model][:methods]
41
+ relations = mm[model][:relations]
42
+
43
+ normalized_relations = relations.map { |relation|
44
+ case relation[:type]
45
45
  when :has_many, :has_and_belongs_to_many
46
46
  ref = :many
47
47
  when :belongs_to, :has_one
@@ -49,60 +49,60 @@ module Codegen
49
49
  else
50
50
  puts "WARNING: Unexpected relation type for relation: #{relation[:name]} on class #{model}"
51
51
  ref = :one
52
- end
53
-
54
- {
55
- cardinality: ref,
56
- name: relation[:name],
57
- type: relation[:klass]
52
+ end
53
+
54
+ {
55
+ cardinality: ref,
56
+ name: relation[:name],
57
+ type: relation[:klass]
58
+ }
58
59
  }
59
- }
60
60
 
61
- normalized_methods = methods.map { |method|
62
- {
63
- cardinality: :one,
64
- name: method[:name],
65
- type: method[:type]
61
+ normalized_methods = methods.map { |method|
62
+ {
63
+ cardinality: :one,
64
+ name: method[:name],
65
+ type: method[:type]
66
+ }
66
67
  }
67
- }
68
68
 
69
- begin
70
- mname = model.class_name
71
- rescue
72
- mname = model.to_s
73
- end
69
+ begin
70
+ mname = model.class_name
71
+ rescue
72
+ mname = model.to_s
73
+ end
74
74
 
75
- Codegen::Types::Entity.new name: mname, methods: normalized_methods, relations: normalized_relations
76
- end
75
+ Codegen::Types::Entity.new name: mname, methods: normalized_methods, relations: normalized_relations
76
+ end
77
77
 
78
78
 
79
- def collect_all_models
80
- begin
81
- Rails.application.eager_load! if defined?(Rails)
82
- ::ActiveRecord::Base.subclasses
83
- rescue
84
- []
79
+ def collect_all_models
80
+ begin
81
+ Rails.application.eager_load! if defined?(Rails)
82
+ ::ActiveRecord::Base.subclasses
83
+ rescue
84
+ []
85
+ end
85
86
  end
86
- end
87
87
 
88
- def model_methods model
89
- model.columns.map { |column|
90
- {
91
- type: column.type.to_s,
92
- name: column.name
88
+ def model_methods model
89
+ model.columns.map { |column|
90
+ {
91
+ type: column.type.to_s,
92
+ name: column.name
93
+ }
93
94
  }
94
- }
95
- end
95
+ end
96
96
 
97
- def model_relations model
98
- model.reflect_on_all_associations.map { |assoc|
99
- {
100
- type: assoc.macro,
101
- name: assoc.name.to_s,
102
- klass: assoc.class_name
97
+ def model_relations model
98
+ model.reflect_on_all_associations.map { |assoc|
99
+ {
100
+ type: assoc.macro,
101
+ name: assoc.name.to_s,
102
+ klass: assoc.class_name
103
+ }
103
104
  }
104
- }
105
+ end
105
106
  end
106
107
  end
107
- end
108
- end
108
+ end
@@ -1,3 +1,3 @@
1
1
  module Codegen
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codegen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cristian Pereyra