phantom-object 1.0.3 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/phantom-object.rb +2 -0
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 16b28dc4e4cc2b20f2c12fd9241fe19ceacc306d
4
- data.tar.gz: db15403154d47df05fe768f850a732129d78bc9d
3
+ metadata.gz: 42e76ce920b8527143660d028e87855ac12566fe
4
+ data.tar.gz: eece3ecfd0c0699a99f50d2c684f8a8fcd47e7a7
5
5
  SHA512:
6
- metadata.gz: caa6a60ac690a548ee631c1342b92f666d3817c991e6700e8d84821a27611d420853244b4fe9b43b8ebf76a2c947ed485273f54407c3d3020f534fa5dad4089b
7
- data.tar.gz: 3f298aa86a9ddf3765992d474ffb7d1e3f3f4e229b5f72f961cf076dbb867eabc5219307697d58efaf476731280fc7ff212c67e0a4b035a44c1f1c23cbb0544f
6
+ metadata.gz: 0a2b2a02d32b3eb6f08eaeceee701425f6e1be7b60c635601ed4d6f0fd00905361ae2121d499ae5d89e7486c34937beab76bae1a2adb371698f392cd5fe0ca14
7
+ data.tar.gz: 5ffb81227f6d0c6a798a2d41e19d759d0880c270f7835b8670e16818e9b7f057ac1bb75d303d7e5a433176e3154e1d6f4e03b2baad8e1ce2a9c011d652d337ca
@@ -12,6 +12,8 @@ class PhantomObject
12
12
 
13
13
  def assign_attributes args = {}
14
14
  args.each do |key, value|
15
+ raise ArgumentError, 'Your hash has keys with whitespaces' if key.match(/\s/i)
16
+ raise ArgumentError, 'Your hash has keys with Capital letters at the beginning' if key.match(/\A[A-Z]/i)
15
17
  self.class_eval("attr_accessor :#{key}") unless self.respond_to?(key.to_sym)
16
18
  if value.is_a?(Array)
17
19
  self.send("#{key}=", value.map{ |v| self.class.new(v) })
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phantom-object
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kourza Ivan a.k.a. Phobos98