nockr 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 83137b93c6aa129d9a8527caf972285b7cafb0bee1bbdec4d776505699755b0a
4
- data.tar.gz: 7b9274283fb21981e20ea8ba0076bf79d48c0236182fda9b1afa0cd3985bb89b
3
+ metadata.gz: 93572e6d615c8e6ed70842a183ef126a59c48582bb2777be6ecf15c71e4fc3ff
4
+ data.tar.gz: d884e59795233131d5ad03049200ad01e6c7c0c3a8cd7f855a564c3b0a2d3e79
5
5
  SHA512:
6
- metadata.gz: f9b4c2fb5225a87bd2b32eb208582bc7405e83ea81df0d69327bb28e62c4a373e52b52ac3210aa87ff459e671fe0e268430e205da8bebdfb7b2176ee175d4b35
7
- data.tar.gz: b09d2c70955288118fc879afad504fe34e3efe659b666502e08ae0230e71fb51bee93212d96f1efb05504c9985e26bcbe841edf26ece220d44045a1d1a76e07e
6
+ metadata.gz: 9b48be61906e15b0ae9452c538232d466b3cda0a02125b4e069db1b3e708e9251d8b2c36aad0c2eda4e3775b0dc8fc9ac789ba7646767cb34f7d91ac44f6df9d
7
+ data.tar.gz: f5b1b870dcff753ee26eec84bf6abaa6ecdf5c36ab7f87feb54afdb8894ac2f57085747c3be053e6b55c1457d83fccec06d317fb64d070a9cb02e34352501d31
data/lib/nockr/noun.rb CHANGED
@@ -1,4 +1,4 @@
1
- module NockR
1
+ module Nockr
2
2
  class Noun
3
3
  def initialize(input_ary:)
4
4
  raise ArgumentError.new("a Noun must be initialized with an Array") unless input_ary.is_a? Array
@@ -7,7 +7,11 @@ module NockR
7
7
 
8
8
  def interpret
9
9
  @n = self.to_tuples @i
10
- return "Interpreting #{@n} as Nock."
10
+ # return "Interpreting #{@n} as Nock."
11
+ end
12
+
13
+ def to_a
14
+ @n
11
15
  end
12
16
 
13
17
  #
@@ -15,6 +19,7 @@ module NockR
15
19
  #
16
20
  def to_tuples(ary)
17
21
  return ary unless ary.is_a? Array
22
+ return ary if 1 == ary.size
18
23
  return [self.to_tuples(ary[0]), self.to_tuples(ary[1])] if 2 == ary.size
19
24
  return [ary[0], self.to_tuples(ary[1..])]
20
25
  end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Nockr
4
+ VERSION = "0.0.2"
5
+ end
data/lib/nockr.rb CHANGED
@@ -1,10 +1,11 @@
1
1
  require "nockr/noun"
2
2
 
3
- module NockR
3
+ module Nockr
4
4
  class << self
5
5
  def nock(input)
6
- n = NockR::Noun.new input_ary: input
7
- puts "#{n.interpret}"
6
+ n = Noun.new input_ary: input
7
+ puts "Interpreting #{input} as Nock..."
8
+ puts "=> #{n.interpret}"
8
9
  end
9
10
  end
10
11
  end
data/nockr.gemspec CHANGED
@@ -1,16 +1,29 @@
1
+ require_relative 'lib/nockr/version'
2
+
1
3
  Gem::Specification.new do |s|
2
- s.name = "nockr"
3
- s.summary = "NockR"
4
- s.description = "A Nock interpreter in Ruby"
5
- s.authors = ["Daryl Richter"]
6
- s.email = "winter8@duck.com"
4
+ s.name = "nockr"
5
+ s.summary = %q{A Nock interpreter in Ruby}
6
+ s.description = %q{Nock is Urbit's assembly language. This gem lets you interpret and run it from Ruby."}
7
+ s.authors = ["Daryl Richter"]
8
+ s.email = ["winter8@duck.com"]
9
+ s.version = Nockr::VERSION
7
10
 
8
- s.files = Dir.glob("lib{.rb,/**/*}", File::FNM_DOTMATCH).reject {|f| File.directory?(f) }
9
- s.files += %w[nockr.gemspec] # include the gemspec itself because warbler breaks w/o it
11
+ s.homepage = "https://rubygems.org/gems/nockr"
12
+ s.license = "BSD-3-Clause"
10
13
 
11
- s.homepage = "https://rubygems.org/gems/nockr"
12
- s.license = "BSD-3-Clause"
13
- s.require_paths = ["lib"]
14
14
  s.required_ruby_version = Gem::Requirement.new(">= 3.2.2")
15
- s.version = "0.0.1"
16
- end
15
+
16
+ s.metadata["homepage_uri"] = s.homepage
17
+ s.metadata["source_code_uri"] = "https://github.com/Zaxonomy/nockr"
18
+ s.metadata["changelog_uri"] = "https://github.com/Zaxonomy/nockr/CHANGELOG.md"
19
+
20
+ # Specify which files should be added to the gem when it is released.
21
+ s.files = Dir.glob("lib{.rb,/**/*}", File::FNM_DOTMATCH).reject {|f| File.directory?(f) }
22
+ s.files += %w[nockr.gemspec] # include the gemspec itself because warbler breaks w/o it
23
+
24
+ s.bindir = "bin"
25
+ s.require_paths = ["lib"]
26
+
27
+ s.add_development_dependency "pry", "~> 0.13"
28
+ s.add_development_dependency "rspec", "~> 3.10"
29
+ end
metadata CHANGED
@@ -1,28 +1,62 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nockr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daryl Richter
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-27 00:00:00.000000000 Z
12
- dependencies: []
13
- description: A Nock interpreter in Ruby
14
- email: winter8@duck.com
11
+ date: 2023-07-07 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: pry
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0.13'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0.13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.10'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '3.10'
41
+ description: Nock is Urbit's assembly language. This gem lets you interpret and run
42
+ it from Ruby."
43
+ email:
44
+ - winter8@duck.com
15
45
  executables: []
16
46
  extensions: []
17
47
  extra_rdoc_files: []
18
48
  files:
19
49
  - lib/nockr.rb
20
50
  - lib/nockr/noun.rb
51
+ - lib/nockr/version.rb
21
52
  - nockr.gemspec
22
53
  homepage: https://rubygems.org/gems/nockr
23
54
  licenses:
24
55
  - BSD-3-Clause
25
- metadata: {}
56
+ metadata:
57
+ homepage_uri: https://rubygems.org/gems/nockr
58
+ source_code_uri: https://github.com/Zaxonomy/nockr
59
+ changelog_uri: https://github.com/Zaxonomy/nockr/CHANGELOG.md
26
60
  post_install_message:
27
61
  rdoc_options: []
28
62
  require_paths:
@@ -41,5 +75,5 @@ requirements: []
41
75
  rubygems_version: 3.4.14
42
76
  signing_key:
43
77
  specification_version: 4
44
- summary: NockR
78
+ summary: A Nock interpreter in Ruby
45
79
  test_files: []