codegen 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
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