fugazi 0.0.2 → 0.2.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 (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