mpatch 2.8.1 → 2.9.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5d3b57e9a4cc8dab797ca68d8414ffddef06c6a7
4
- data.tar.gz: eb443c2ee71867129b43a0e1c053fa384cb7b631
3
+ metadata.gz: 0777613055d38431a72ccfb7b0ff1691cdec65a1
4
+ data.tar.gz: b9d3d3b92578dd730ba5fb56c882ff8bda44619b
5
5
  SHA512:
6
- metadata.gz: 8ec36f94ce8777af0c9c8f470741044004ef36873364c016040553be28b351b0a7d3eb3431cdab565a7a5a604a034ebeaca109874865d343450c828fc1e6bdf3
7
- data.tar.gz: fa99e29c236c18bb4035f490ef681aaef02b6075d9e92651b07236a8686170655527966c2e857175afebec86acdc9339c8c954500e50e3820b8307f154a2df4b
6
+ metadata.gz: d4facd8f4c5dfd1c18f48ed363d84192c14e9cd9863015c2d9a60ea268e96a1c8e79e2b5c94cae3d0938267ea0f83d7a64fd862d83b23ed24a5725e1828c086d
7
+ data.tar.gz: b9a51fd5843ea09ca99c25515086cf486e1d09cc9ff1ff186a50d30982be90a8fd43e63cde5fade3e293595f2e7b649c51f3020b5e7a63d695e1af713acc416e
data/VERSION CHANGED
@@ -1,2 +1,2 @@
1
- 2.8.1
1
+ 2.9.0
2
2
 
data/examples/array.rb ADDED
@@ -0,0 +1,18 @@
1
+
2
+ require_relative '../lib/mpatch/array'
3
+ MPatch.patch!
4
+
5
+ asd= [1,2,3,4,5]
6
+
7
+ puts asd.inspect
8
+
9
+ puts asd.skip.inspect
10
+ puts asd.inspect
11
+ asd.skip!.inspect
12
+ puts asd.inspect
13
+
14
+ puts asd.pinch.inspect
15
+ puts asd.inspect
16
+
17
+ asd.pinch!.inspect
18
+ puts asd.inspect
data/lib/mpatch/array.rb CHANGED
@@ -11,7 +11,7 @@ module MPatch
11
11
  args.dup.each do |one_element|
12
12
  if one_element.class <= ::Array
13
13
  args.delete_at(args.index(one_element))
14
- args= args+one_element
14
+ args += one_element
15
15
  end
16
16
  end
17
17
 
@@ -38,18 +38,34 @@ module MPatch
38
38
  # remove n. element from the end
39
39
  # and return a new object
40
40
  def pinch n=1
41
+ raise(ArgumentError) unless n.class <= Integer
41
42
  return self[0..(self.count-(n+1))]
42
43
  end
43
44
 
44
45
  # remove n. element from the end
45
46
  # and return the original object
46
47
  def pinch! n=1
48
+ raise(ArgumentError) unless n.class <= Integer
47
49
  n.times do
48
50
  self.pop
49
51
  end
50
52
  return self
51
53
  end
52
54
 
55
+ # shifted first element and return new array
56
+ def skip n=1
57
+ raise(ArgumentError) unless n.class <= Integer
58
+ self[1 .. (n*(-1))]
59
+ end
60
+
61
+ def skip! n=1
62
+ raise(ArgumentError) unless n.class <= Integer
63
+ n.times do
64
+ self.shift
65
+ end
66
+ return self
67
+ end
68
+
53
69
  # return boolean by other array
54
70
  # all element included or
55
71
  # not in the target array
data/test/test.rb CHANGED
@@ -1,32 +1,4 @@
1
1
 
2
- require_relative '../lib/mpatch/object'
2
+ require_relative '../lib/mpatch/array'
3
3
  MPatch.patch!
4
4
 
5
-
6
-
7
- try { hello world }
8
- catch{ "not hello world " }
9
- #> "not hello world"
10
-
11
-
12
- try { "hello world".asdaf }
13
- catch( NoMethodError ) { |ex|
14
- puts "there is and error, because #{ex}"
15
- }
16
-
17
- #> you can cain up multiple catch for specific error
18
- try { "hello world".asdaf }
19
- catch( NoMethodError ) { |ex|
20
- puts "there is and error, because #{ex}"
21
- }
22
-
23
- try { "hello world".asdaf }
24
- catch(ArgumentError) {
25
- puts "it was and argument error"
26
- }
27
-
28
- catch( NoMethodError ) { |ex|
29
- puts "bla bla #{ex}"
30
- }
31
-
32
-
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mpatch
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.1
4
+ version: 2.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Luzsi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-20 00:00:00.000000000 Z
11
+ date: 2014-05-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: This is a collection of my Ruby monkey patches for making easer to use
14
14
  the basic classes
@@ -24,6 +24,7 @@ files:
24
24
  - VERSION
25
25
  - create_folder.rb
26
26
  - dump/class_and_module.rb
27
+ - examples/array.rb
27
28
  - examples/privatize.rb
28
29
  - examples/test.rb
29
30
  - files.rb