3 Commits

Author SHA1 Message Date
99493865c1 bumped and added parslet as dep 2015-07-09 22:14:25 +03:00
d6d8403829 update parsley version 2015-05-20 17:34:13 +03:00
663154ba24 fix small glitch/typo 2015-05-20 17:33:38 +03:00
5 changed files with 21 additions and 9 deletions

View File

@ -1,6 +1,8 @@
source "http://rubygems.org"
gem "parslet"
gem "rake"
gem "salama-reader" , :path => "."
# Add dependencies to develop your gem here.
# Include everything needed to run rake, tests, features, etc.

View File

@ -1,10 +1,17 @@
PATH
remote: .
specs:
salama-reader (0.2.0)
parslet (~> 1.7.0)
GEM
remote: http://rubygems.org/
specs:
blankslate (2.1.2.4)
minitest (5.3.2)
parslet (1.6.1)
blankslate (~> 2.0)
blankslate (3.1.3)
minitest (5.6.1)
parslet (1.7.0)
blankslate (>= 2.0, <= 4.0)
rake (10.4.2)
rubygems-tasks (0.2.4)
PLATFORMS
@ -12,5 +19,6 @@ PLATFORMS
DEPENDENCIES
minitest
parslet
rake
rubygems-tasks
salama-reader!

View File

@ -2,7 +2,7 @@
Gem::Specification.new do |s|
s.name = 'salama-reader'
s.version = '0.0.3'
s.version = '0.2.0'
s.authors = ['Torsten Ruger']
s.email = 'torsten@villataika.fi'
@ -13,4 +13,6 @@ Gem::Specification.new do |s|
s.require_paths = ['lib']
s.summary = 'Ruby parser for the salama machine'
s.add_dependency 'parslet', '~> 1.7.0'
end

View File

@ -17,7 +17,7 @@ HERE
end
def pest_while_reverse
@string_input = "puts "1" while true "
@string_input = "puts '1' while true "
@parse_output = {:expression_list=>[{:while=>"while", :while_cond=>{:integer=>"1"}, :do=>"do", :body=>{:expressions=>[{:l=>{:name=>"tmp"}, :o=>"= ", :r=>{:name=>"a"}}, {:call_site=>{:name=>"puts"}, :argument_list=>[{:argument=>{:name=>"b"}}]}], :end=>"end"}}]}
@transform_output = Ast::ExpressionList.new( [Ast::WhileExpression.new(Ast::IntegerExpression.new(1), [Ast::AssignmentExpression.new(Ast::NameExpression.new(:tmp),Ast::NameExpression.new(:a)), Ast::CallSiteExpression.new(:puts, [Ast::NameExpression.new(:b)] ,Ast::NameExpression.new(:self))] )])
@parser = @parser

View File

@ -18,7 +18,7 @@ HERE
end
def pest_while_reverse
@string_input = "puts "1" while true "
@string_input = "puts '1' while true "
@parse_output = {:while=>"while", :while_cond=>{:integer=>"1"}, :do=>"do", :body=>{:expressions=>[{:l=>{:name=>"tmp"}, :o=>"= ", :r=>{:name=>"a"}}, {:call_site=>{:name=>"puts"}, :argument_list=>[{:argument=>{:name=>"b"}}]}], :end=>"end"}}
@transform_output = Ast::WhileExpression.new(Ast::IntegerExpression.new(1), [Ast::AssignmentExpression.new(Ast::NameExpression.new(:tmp),Ast::NameExpression.new(:a)), Ast::CallSiteExpression.new(:puts, [Ast::NameExpression.new(:b)] ,Ast::NameExpression.new(:self))] )
@parser = @parser.while_do