fictive 0.0.6 → 0.0.7

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
  SHA1:
3
- metadata.gz: 07df70dcf2a31222db91cd582c21addbee6b877e
4
- data.tar.gz: 14edd07192ae1f6bba9fd48046da469c28e03b03
3
+ metadata.gz: b6bbbd56cce785174f12d632718c08e78988b27d
4
+ data.tar.gz: f4d10a739a5804473155a49c2bbb3c38a5f047ee
5
5
  SHA512:
6
- metadata.gz: 82c12bd352ef15873184cea36a65a7d4af81c03c227b705d4b6e978314152b615531cbe630f6bbc89fc10c19955f87a9301a00472a24e68f83bf6bbd15a7bc96
7
- data.tar.gz: ed8fc5bd88d84960eca09dcf941f974c1fbe5c0f5f4c199eea6bb0f58b875c5d47a769429ccbf3567f5472808bf86267ab7e7672bfbb39ec6908a2fc456a2400
6
+ metadata.gz: 9dc2fdb91d86d04e71063440b468a2d248071a5bafc25ee798b0106db44fb3edfc868ab7cb0f234d05aa3d2207b0d84cc481584a078284a7904d323a631ca0ae
7
+ data.tar.gz: ae7ea3fe3e7735bc84d09cc936d7b7d9deb6a507452e1945cbb5071bdb0d86a74aed7a1bfebb543c4f1378a4bd5276f03464a5d11f87481630eef5509e8de391
@@ -7,7 +7,8 @@ module Fictive
7
7
  @input = input
8
8
  end
9
9
 
10
- def process
10
+ def process(symbol_table={})
11
+ @symbol_table = symbol_table
11
12
  @scanner = StringScanner.new(@input)
12
13
 
13
14
  Fictive::Text::Node.new(*parse_fragments)
@@ -49,13 +50,12 @@ module Fictive
49
50
  def parse_substitution
50
51
  scanner.skip(/\s/)
51
52
 
52
- if reference = scanner.scan(/[A-Za-z0-9_\-!]/)
53
- Fictive::Text::ReferenceNode.new(reference, {})
53
+ if reference = scanner.scan(/[A-Za-z0-9_\-!]+/)
54
+ scanner.skip(/\s*}/)
55
+ Fictive::Text::ReferenceNode.new(reference, @symbol_table)
54
56
  else
55
57
  raise 'Invalid syntax'
56
58
  end
57
-
58
- scanner.skip(/\s*}/)
59
59
  end
60
60
 
61
61
  def parse_conditional
@@ -103,7 +103,7 @@ module Fictive
103
103
 
104
104
  class ReferenceNode
105
105
  def initialize(reference, symbol_table)
106
- @reference = reference
106
+ @reference = reference.to_sym
107
107
  @symbol_table = symbol_table
108
108
  end
109
109
 
@@ -1,3 +1,3 @@
1
1
  module Fictive
2
- VERSION = '0.0.6'.freeze
2
+ VERSION = '0.0.7'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fictive
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Rickerby
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-18 00:00:00.000000000 Z
11
+ date: 2016-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler