metaractor-sycamore 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 11c200f95444bae5971a1e5f7b0f9eb7c15f04087a6fc7e7d0c62760a4583a0e
4
+ data.tar.gz: ff89bf7bc3e510ad2a1c2dfe83e3e8d086f82c95cbca2b71eb52b0b395a39ff5
5
+ SHA512:
6
+ metadata.gz: 9b114dda2b8441e4d7e551416147a2552fc762226ff4cf56b72b347157f0fd83d787ba89972f6df42c4dbabce82d7df70cc3a2c4dd9ccef233009ed0b885daf8
7
+ data.tar.gz: 3d2b071c69e7a2c3645e556488fc9d03418bda2dbc471834d819416cb1e14e448a3ab9af4a7bb999456ad98d6168c7598eb288349e77b6ab9730719fc0e2db51
data/.editorconfig ADDED
@@ -0,0 +1,24 @@
1
+ root = true
2
+
3
+ [*]
4
+ charset = utf-8
5
+ end_of_line = lf
6
+ insert_final_newline = true
7
+ trim_trailing_whitespace = true
8
+
9
+ [*.rb]
10
+ indent_style = space
11
+ indent_size = 2
12
+
13
+ [*.gemspec]
14
+ indent_style = space
15
+ indent_size = 2
16
+
17
+ [*.yml]
18
+ indent_style = space
19
+ indent_size = 2
20
+
21
+ [*.md]
22
+ indent_style = space
23
+ indent_size = 2
24
+ trim_trailing_whitespace = false
data/.envrc ADDED
@@ -0,0 +1,3 @@
1
+ source_url "https://raw.githubusercontent.com/cachix/devenv/d1f7b48e35e6dee421cfd0f51481d17f77586997/direnvrc" "sha256-YBzqskFZxmNb3kYVoKD9ZixoPXJh1C9ZvTLGFRkauZ0="
2
+
3
+ use devenv
@@ -0,0 +1,13 @@
1
+ name: Specs
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ - uses: actions/checkout@v3
10
+ - uses: ruby/setup-ruby@v1
11
+ with:
12
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
13
+ - run: bundle exec rspec spec
data/.gitignore ADDED
@@ -0,0 +1,16 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc
7
+ /pkg/
8
+ /spec/reports/
9
+ /spec/examples.txt
10
+ /tmp/
11
+
12
+
13
+ # Devenv
14
+ .devenv*
15
+ devenv.local.nix
16
+ .direnv*
data/.rspec ADDED
@@ -0,0 +1,6 @@
1
+ --color
2
+ #--format documentation
3
+ #--format progress
4
+ #--format Fuubar
5
+ #--fail-fast
6
+ --require spec_helper
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 3.2.2
data/.yardopts ADDED
@@ -0,0 +1,13 @@
1
+ --title "Sycamore"
2
+ --output-dir doc/yard
3
+ --protected
4
+ --private
5
+ --no-private
6
+ --readme README.md
7
+ -
8
+ AUTHORS
9
+ CREDITS
10
+ LICENSE.txt
11
+ CHANGELOG.md
12
+ CONTRIBUTING.md
13
+ VERSION
data/AUTHORS ADDED
@@ -0,0 +1,2 @@
1
+ - Marcel Otto <marcelotto.de@gmail.com>
2
+ - Ryan Schlesinger <ryan@ryanschlesinger.com>
data/CHANGELOG.md ADDED
@@ -0,0 +1,88 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ This project adheres to [Semantic Versioning](http://semver.org/) and
5
+ [Keep a CHANGELOG](http://keepachangelog.com).
6
+
7
+
8
+ ## 0.3.1 - 2016-05-07
9
+
10
+ ### Added
11
+
12
+ - array-access operator and `fetch` on `Path` for random access
13
+
14
+ ### Changed
15
+
16
+ - Lazy initialization of the internal hash. This improves extensibility, eg. by
17
+ not requiring a `super` call in the constructors of `Tree` subclasses.
18
+
19
+
20
+ [Compare v0.3.0...v0.3.1](https://github.com/marcelotto/sycamore/compare/v0.3.0...v0.3.1)
21
+
22
+
23
+
24
+ ## 0.3.0 - 2016-04-23
25
+
26
+ ### Added
27
+
28
+ - support `Path` objects as input on the following `Tree` methods:
29
+ - the `Tree.[]` population constructor
30
+ - `fetch`
31
+ - `add`
32
+ - `delete`
33
+ - `replace`
34
+ - `[]=`
35
+ - `include_node?`
36
+ - `leaf?`
37
+ - `strict_leaf?`
38
+ - `strict_leaves?`
39
+ - `internal?`
40
+ - `external?`
41
+ - `Tree#fetch_path` for fetching a child by path
42
+
43
+ ### Fixed
44
+
45
+ - `Tree#add` or `Tree#delete` now fail without making any changes, when given
46
+ invalid input. Previously these command methods performed their operations
47
+ until the invalid input elements were encountered.
48
+ - `Tree#delete` deleted paths, when they matched a given input path partially,
49
+ e.g. `Tree[a: 1] >> a: {1 => 2}` deleted successfully.
50
+
51
+
52
+ [Compare v0.2.1...v0.3.0](https://github.com/marcelotto/sycamore/compare/v0.2.1...v0.3.0)
53
+
54
+
55
+
56
+ ## 0.2.1 - 2016-04-07
57
+
58
+ ### Added
59
+
60
+ - assigning `nil` via `Tree#[]=` removes a child tree, similar to the assignment
61
+ of `Sycamore::Nothing`
62
+
63
+ ### Fixed
64
+
65
+ - [#2](https://github.com/marcelotto/sycamore/issues/2): Rubinius support
66
+
67
+
68
+ [Compare v0.2.0...v0.2.1](https://github.com/marcelotto/sycamore/compare/v0.2.0...v0.2.1)
69
+
70
+
71
+
72
+ ## 0.2.0 - 2016-04-05
73
+
74
+ ### Added
75
+
76
+ - assigning `Sycamore::Nothing` via `Tree#[]=` removes a child tree
77
+ - `Tree#search` for searching the tree for one or multiple nodes or a tree
78
+ - `Tree#node!` as a more strict variant of `Tree#node`, which raises an error
79
+ when no node present
80
+
81
+
82
+ [Compare v0.1.0...v0.2.0](https://github.com/marcelotto/sycamore/compare/v0.1.0...v0.2.0)
83
+
84
+
85
+
86
+ ## 0.1.0 - 2016-03-28
87
+
88
+ Initial release
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,5 @@
1
+ 1. Fork it ( <https://github.com/marcelotto/sycamore/fork> )
2
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
3
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
4
+ 4. Push to the branch (`git push origin my-new-feature`)
5
+ 5. Create a new Pull Request
data/CREDITS ADDED
File without changes
data/Gemfile ADDED
@@ -0,0 +1,12 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :debug do
6
+ gem 'guard-rspec'
7
+ gem 'pry'
8
+ end
9
+
10
+ group :test do
11
+ gem 'coveralls', require: false, platform: :mri
12
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2015-2016 Marcel Otto
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.