private_attr 0.1.1 → 1.0.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3fe27ad01f2e233e9d5422b483cfeef78abe6ac5
4
+ data.tar.gz: 09790254ddce8d6828c3a73cff4446edb3de33c6
5
+ SHA512:
6
+ metadata.gz: 6921dcd2d484d73587154668ea5e99ac1c3e5586d1600c487d02388b1e9348342a0794cc20305e5e307c9f2cb70c717123a7c767d8a3be531c1f4390a61d0d24
7
+ data.tar.gz: 5ccea01bdb065d1dda91d50568f1b2df5d088b20974774ab84c39a5f41e0903bb06baf0fb1de3dc2427e3f11e83524a086d1787b60e8a639b6a452f509801a23
@@ -1,3 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
3
  - 1.9.3
4
+ - 2.0.0
5
+ - 2.1
6
+ - 2.2
data/Gemfile CHANGED
@@ -1,5 +1,2 @@
1
1
  source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in private_attr.gemspec
4
2
  gemspec
5
- gem 'rake'
data/Rakefile CHANGED
@@ -4,6 +4,7 @@ require 'rake/testtask'
4
4
  Rake::TestTask.new do |t|
5
5
  t.name = 'spec'
6
6
  t.pattern = 'spec/**/*_spec.rb'
7
+ t.warning = true
7
8
  end
8
9
 
9
10
  task default: :spec
@@ -1,33 +1,35 @@
1
1
  require "private_attr/version"
2
2
 
3
3
  module PrivateAttr
4
+ module_function
5
+
4
6
  def private_attr_accessor *attr
5
- private_attr_reader *attr
6
- private_attr_writer *attr
7
+ private_attr_reader(*attr)
8
+ private_attr_writer(*attr)
7
9
  end
8
10
 
9
11
  def private_attr_reader *attr
10
- attr_reader *attr
11
- private *attr
12
+ attr_reader(*attr)
13
+ private(*attr)
12
14
  end
13
15
 
14
16
  def private_attr_writer *attr
15
- attr_writer *attr
16
- private *attr.map { |a| "#{a}=" }
17
+ attr_writer(*attr)
18
+ private(*attr.map { |a| "#{a}=" })
17
19
  end
18
20
 
19
21
  def protected_attr_accessor *attr
20
- protected_attr_reader *attr
21
- protected_attr_writer *attr
22
+ protected_attr_reader(*attr)
23
+ protected_attr_writer(*attr)
22
24
  end
23
25
 
24
26
  def protected_attr_reader *attr
25
- attr_reader *attr
26
- protected *attr
27
+ attr_reader(*attr)
28
+ protected(*attr)
27
29
  end
28
30
 
29
31
  def protected_attr_writer *attr
30
- attr_writer *attr
31
- protected *attr.map { |a| "#{a}=" }
32
+ attr_writer(*attr)
33
+ protected(*attr.map { |a| "#{a}=" })
32
34
  end
33
35
  end
@@ -1,3 +1,3 @@
1
1
  module PrivateAttr
2
- VERSION = "0.1.1"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -17,4 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
18
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
19
  gem.require_paths = ["lib"]
20
+
21
+ gem.add_development_dependency 'minitest', '~> 5.0'
22
+ gem.add_development_dependency 'rake', '~> 10.0'
20
23
  end
@@ -242,4 +242,10 @@ describe PrivateAttr do
242
242
  other.instance_variable_get('@writer').must_equal value
243
243
  end
244
244
  end
245
+
246
+ describe 'method visibility' do
247
+ it 'extending classes does not increase their public APIs' do
248
+ PrivateDummy.public_methods.wont_include :private_attr_accessor
249
+ end
250
+ end
245
251
  end
metadata CHANGED
@@ -1,16 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: private_attr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jacob Swanner
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-11-29 00:00:00.000000000 Z
13
- dependencies: []
11
+ date: 2015-02-03 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: minitest
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '5.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '5.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
14
41
  description: Easily create private/protected attribute readers/writers
15
42
  email:
16
43
  - jacob@jacobswanner.com
@@ -18,8 +45,8 @@ executables: []
18
45
  extensions: []
19
46
  extra_rdoc_files: []
20
47
  files:
21
- - .gitignore
22
- - .travis.yml
48
+ - ".gitignore"
49
+ - ".travis.yml"
23
50
  - Gemfile
24
51
  - LICENSE.txt
25
52
  - README.md
@@ -31,27 +58,27 @@ files:
31
58
  homepage: https://github.com/jswanner/private_attr
32
59
  licenses:
33
60
  - MIT
61
+ metadata: {}
34
62
  post_install_message:
35
63
  rdoc_options: []
36
64
  require_paths:
37
65
  - lib
38
66
  required_ruby_version: !ruby/object:Gem::Requirement
39
- none: false
40
67
  requirements:
41
- - - ! '>='
68
+ - - ">="
42
69
  - !ruby/object:Gem::Version
43
70
  version: '0'
44
71
  required_rubygems_version: !ruby/object:Gem::Requirement
45
- none: false
46
72
  requirements:
47
- - - ! '>='
73
+ - - ">="
48
74
  - !ruby/object:Gem::Version
49
75
  version: '0'
50
76
  requirements: []
51
77
  rubyforge_project:
52
- rubygems_version: 1.8.23
78
+ rubygems_version: 2.2.2
53
79
  signing_key:
54
- specification_version: 3
80
+ specification_version: 4
55
81
  summary: Easily create private/protected attribute readers/writers
56
82
  test_files:
57
83
  - spec/private_attr_spec.rb
84
+ has_rdoc: