fugazi 0.0.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -1
  3. data/fugazi.gemspec +1 -3
  4. data/lib/fugazi.rb +6 -13
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bf08af66cc7b010daf380b3a00ce5c5e9a43aada
4
- data.tar.gz: 0a1f6b0316f0ad6fc54fdd7c3f9c4bd8dce77a4b
3
+ metadata.gz: 2a8e1a05f7edcc0e796142941662d38bf5de2370
4
+ data.tar.gz: abc7e68f127b4671ba750efa499b5ea44ccbc0a8
5
5
  SHA512:
6
- metadata.gz: 03e29c5b1692969121ccaca1146003cfc4f4b82d98bd2d0257fd17a50eb30ead16a8d8dbd2727ca7a7845f49ba57ebd13e902bd0265cfc1acc65d08ba401acc9
7
- data.tar.gz: 41ce9f9f5cda233d9bef9d95fdcbead7f98f280c9e066c190ae8dcec3e7c5b8d61e6154afb1a261dd59633c8d2018bc34ed0e879be4ad98f2e794d3fea853366
6
+ metadata.gz: 89aca2d3c6cc0545116d30d553647f88dd7c3e0f3aaf868d6d98a822eb1a6d6e7d7b58037182eb2874470cf08269f7abff7819f23e3687f51a97ef0a6b6e8cac
7
+ data.tar.gz: 4166c0b260199001136e7aed962dda16db2a796f61e4d45e0cf3d8007dd56670cf0e26729ef1a2ddbb5c605eafbb8655b7273e6034663239de02c1683fa3357f
data/README.md CHANGED
@@ -26,7 +26,12 @@ class Box
26
26
  end
27
27
  ```
28
28
 
29
+ ##implementation
30
+ `fugazi` saves the arg labels and default values in class variables and combines them with args in `#initialize`
31
+
32
+ using class variables here is ok, because it's intended to be used only in base classes
33
+
29
34
  ##todo
30
35
 
31
36
  block support
32
-
37
+ error handling
data/fugazi.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "fugazi"
3
- s.version = "0.0.2"
3
+ s.version = "0.2.0"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
6
  s.require_paths = ["lib"]
@@ -31,5 +31,3 @@ Gem::Specification.new do |s|
31
31
  s.add_development_dependency(%q<rspec>, ["= 3.3.0"])
32
32
  end
33
33
  end
34
-
35
-
data/lib/fugazi.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Fugazi
2
2
  def self.included(receiver)
3
- receiver.send :include, InstanceMethods
3
+ receiver.send :prepend, InstanceMethods
4
4
  receiver.extend ClassMethods
5
5
  end
6
6
 
@@ -19,19 +19,19 @@ module Fugazi
19
19
  end
20
20
 
21
21
  def default_args
22
- @defaults || {}
22
+ superclass.respond_to?(:default_keyword_args) ? superclass.default_args : @defaults || {}
23
23
  end
24
24
 
25
25
  def field_args
26
- @fields || []
26
+ superclass.respond_to?(:field_args) ? superclass.field_args : @fields || []
27
27
  end
28
28
 
29
29
  def keyword_args
30
- @keywords || []
30
+ superclass.respond_to?(:keyword_args) ? superclass.keyword_args : @keywords || []
31
31
  end
32
32
 
33
33
  def default_keyword_args
34
- @default_keywords || {}
34
+ superclass.respond_to?(:default_keyword_args) ? superclass.default_keyword_args : @default_keywords || {}
35
35
  end
36
36
  end
37
37
 
@@ -64,11 +64,4 @@ module Fugazi
64
64
  end
65
65
  end
66
66
 
67
- # class A
68
- # include Fugazi
69
- # fields :z
70
- # defaults y: 2
71
- # end
72
-
73
- # a = A.new 2
74
- # puts a.z, a.y
67
+ #d
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fugazi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Ivanov