cons 1.2.2 → 1.2.3

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cons.rb +16 -1
  3. metadata +7 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 436404b757bc989dcd98b232d0e576639e44d238
4
- data.tar.gz: 8a19911a5e407f897b9c5140c6e0d7e6c6d6996f
3
+ metadata.gz: adc2dd443ece22f7da1622844fccd4a898fe52da
4
+ data.tar.gz: 33380057b9d34f37a07823b4bb5e634892834105
5
5
  SHA512:
6
- metadata.gz: dadb9b7add82c03170b927745bf7c17f95c99b5ff51c14d42a463b0533352a3954133426bd298d910176b7f2e4079ed78d8577f62bae2965cfa646e8d8d88877
7
- data.tar.gz: ba76531625fa39927c7e3f8f5b4dfa1ecfab7d3b040716db6f6fa8c76b100ad7756dedcea2604968e5dd2ae2c9dcdef744db642ec5faad5bfb819669291f01b8
6
+ metadata.gz: 163288c65b1325935d6dacee39e14266f06b5424d4f4a116c2c81cce767140e4232640df96d07150658f23917889fd1b58192e68a8c32050ae3e1233e441d474
7
+ data.tar.gz: c08668a981526aa03a56b3cf845e185e68c597e4123dd6cd395332dbdac4a25639dfa6193ba549e6c66442131da796a7ee6d2fd30143156078d7a1b54f9664d1
@@ -35,6 +35,15 @@
35
35
  # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36
36
  # POSSIBILITY OF SUCH DAMAGE.
37
37
 
38
+ class NilClass
39
+ # http://clhs.lisp.se/Body/f_endp.htm
40
+ def end?
41
+ true
42
+ end
43
+
44
+ alias endp end?
45
+ end
46
+
38
47
  class Array
39
48
  def to_cons
40
49
  Cons.from_array self
@@ -105,6 +114,13 @@ class Cons
105
114
  nth n
106
115
  end
107
116
 
117
+ # http://clhs.lisp.se/Body/f_endp.htm
118
+ def end?
119
+ @car.nil? and @cdr.nil?
120
+ end
121
+
122
+ alias endp end?
123
+
108
124
  def nth_eq(n, value)
109
125
  i = nthcdr(n)
110
126
  if i.nil?
@@ -310,7 +326,6 @@ class Cons
310
326
  ## Lots of TODOs from the CLHS
311
327
 
312
328
  # TODO - (n)butlast - http://clhs.lisp.se/Body/f_butlas.htm
313
- # TODO - endp - http://clhs.lisp.se/Body/f_endp.htm
314
329
  # TODO - ldiff, tailp - http://clhs.lisp.se/Body/f_ldiffc.htm
315
330
  # TODO - list* - http://clhs.lisp.se/Body/f_list_.htm
316
331
  # TODO - member, member-if, member-if-not - http://clhs.lisp.se/Body/f_mem_m.htm
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cons
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Mark Gore
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-25 00:00:00.000000000 Z
11
+ date: 2016-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  description: |-
@@ -43,17 +43,17 @@ require_paths:
43
43
  - lib
44
44
  required_ruby_version: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ~>
47
47
  - !ruby/object:Gem::Version
48
48
  version: '2.3'
49
49
  required_rubygems_version: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ">="
51
+ - - '>='
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
54
  requirements: []
55
55
  rubyforge_project:
56
- rubygems_version: 2.5.1
56
+ rubygems_version: 2.0.14.1
57
57
  signing_key:
58
58
  specification_version: 4
59
59
  summary: Lisp-style cons cells for Ruby.