ast 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +1 -1
- data/README.YARD.md +12 -0
- data/README.md +22 -0
- data/Rakefile +1 -1
- data/ast.gemspec +1 -1
- data/lib/ast.rb +12 -12
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d9b626d3142fac2406e66bee130edf576bf3cdac
|
4
|
+
data.tar.gz: abd5643281c42dbcab8b126fd35ed0713258f790
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 508ff146c2009a9c972ff4179d87facfbee08dc0b49e9a2d4caa1b595d42dab95844afa5d1efbaf7b71d487ed447a390528b1f63e05baadd89d3f341cec4c7c2
|
7
|
+
data.tar.gz: e60093401376180a850d61861b836881acc404156d1e3830e59e6d76e987fd3fa04836e1db589fd41f62a9dbbcfe1a76574bff04edc58cfeca028d71fa4d1b37
|
data/.yardopts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
-r
|
1
|
+
-r README.YARD.md -m markdown --protected
|
data/README.YARD.md
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
{AST} is a library for manipulating abstract syntax trees.
|
2
|
+
|
3
|
+
It embraces immutability; each AST node is inherently frozen at
|
4
|
+
creation, and updating a child node requires recreating that node
|
5
|
+
and its every parent, recursively.
|
6
|
+
|
7
|
+
This is a design choice. It does create some pressure on
|
8
|
+
garbage collector, but completely eliminates all concurrency
|
9
|
+
and aliasing problems.
|
10
|
+
|
11
|
+
See also {AST::Node}, {AST::Processor} and {AST::Sexp} for additional
|
12
|
+
recommendations and design patterns.
|
data/README.md
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
# Parser
|
2
|
+
|
3
|
+
[![Build Status](https://travis-ci.org/whitequark/ast.png?branch=master)](https://travis-ci.org/whitequark/ast)
|
4
|
+
[![Code Climate](https://codeclimate.com/github/whitequark/ast.png)](https://codeclimate.com/github/whitequark/ast)
|
5
|
+
|
6
|
+
AST is a small library for working with immutable abstract syntax trees.
|
7
|
+
|
8
|
+
## Installation
|
9
|
+
|
10
|
+
$ gem install ast
|
11
|
+
|
12
|
+
## Usage
|
13
|
+
|
14
|
+
See the documentation at [GitHub](http://whitequark.github.com/ast/frames.html) or [rdoc.info](http://rdoc.info/gems/ast).
|
15
|
+
|
16
|
+
## Contributing
|
17
|
+
|
18
|
+
1. Fork it
|
19
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
20
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
21
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
22
|
+
5. Create new Pull Request
|
data/Rakefile
CHANGED
@@ -13,7 +13,7 @@ PAGES_REPO = 'git@github.com:whitequark/ast'
|
|
13
13
|
desc "Build and deploy documentation to GitHub pages"
|
14
14
|
task :pages do
|
15
15
|
system "git clone #{PAGES_REPO} gh-temp/ -b gh-pages; rm gh-temp/* -rf; touch gh-temp/.nojekyll" or abort
|
16
|
-
system "yardoc -o gh-temp/;
|
16
|
+
system "yardoc -o gh-temp/;" or abort
|
17
17
|
system "cd gh-temp/; git add -A; git commit -m 'Updated pages.'; git push -f origin gh-pages" or abort
|
18
18
|
FileUtils.rm_rf 'gh-temp'
|
19
19
|
end
|
data/ast.gemspec
CHANGED
data/lib/ast.rb
CHANGED
@@ -1,16 +1,16 @@
|
|
1
|
+
# {AST} is a library for manipulating abstract syntax trees.
|
2
|
+
#
|
3
|
+
# It embraces immutability; each AST node is inherently frozen at
|
4
|
+
# creation, and updating a child node requires recreating that node
|
5
|
+
# and its every parent, recursively.
|
6
|
+
# This is a design choice. It does create some pressure on
|
7
|
+
# garbage collector, but completely eliminates all concurrency
|
8
|
+
# and aliasing problems.
|
9
|
+
#
|
10
|
+
# See also {AST::Node}, {AST::Processor} and {AST::Sexp} for additional
|
11
|
+
# recommendations and design patterns.
|
12
|
+
#
|
1
13
|
module AST
|
2
|
-
# AST is a library for manipulating abstract syntax trees.
|
3
|
-
#
|
4
|
-
# It embraces immutability; each AST node is inherently frozen at
|
5
|
-
# creation, and updating a child node requires recreating that node
|
6
|
-
# and its every parent, recursively.
|
7
|
-
# This is a design choice. It does create some pressure on
|
8
|
-
# garbage collector, but completely eliminates all concurrency
|
9
|
-
# and aliasing problems.
|
10
|
-
#
|
11
|
-
# See also {Node}, {Processor} and {Sexp} for additional
|
12
|
-
# recommendations and design patterns.
|
13
|
-
|
14
14
|
require_relative "ast/node"
|
15
15
|
require_relative "ast/processor"
|
16
16
|
require_relative "ast/sexp"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ast
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Zotov
|
@@ -106,6 +106,8 @@ files:
|
|
106
106
|
- .yardopts
|
107
107
|
- Gemfile
|
108
108
|
- LICENSE.MIT
|
109
|
+
- README.YARD.md
|
110
|
+
- README.md
|
109
111
|
- Rakefile
|
110
112
|
- ast.gemspec
|
111
113
|
- lib/ast.rb
|