nockr 0.0.1 → 0.0.2

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
  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: []