bade 0.2.2 → 0.2.3

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
  SHA1:
3
- metadata.gz: f928ce45234b7edbf5fa3c8e3531688c8bf4bc11
4
- data.tar.gz: 532eac47aa229d5a4b9a2d16740eef9f0e5e38d7
3
+ metadata.gz: ed7e7245f8cbc2101c82381279d924b8207f708d
4
+ data.tar.gz: f7cdf22720b27a64cf05cb3888960a0f1c309fea
5
5
  SHA512:
6
- metadata.gz: 6a879c59dc4422f94d3190028a0636a0dd643b5af8f5172f0f0bfd119533015f706b55dafcb37bad13a6eb440c92ff7fda243641013d13b9ce6bb9ffc181d28f
7
- data.tar.gz: 6949c8a7edfe07c552a4bc169d6b4dcfc439b8502fcf84dc839eb2248fc95916c9cfee8f897fc690f8c2e3931114f0efc4d6c01fa9979008927f8c6f9aa21239
6
+ metadata.gz: 5a953b1e7336bd05a52d1bf1b8a5ce8310128ac173639a0ef0f4c8b9c55104885a5d924f1aacf14ae79f63af3497e6f5ae7eb0b499e047e9f5f5e1e49aaf8195
7
+ data.tar.gz: 6516a22a30ba0c11655afb34217494cf69d5b28c6bcbd6354c9c8ce502a5391cd0b8de12df3a4f00f53cf6cbeebc2678ad005781ff71ecba19cec0ff011f69a0
@@ -24,8 +24,9 @@ module Bade
24
24
  /\A\s*[#{Regexp.escape outer_delimiters.to_s}]/
25
25
  end
26
26
  delimiters = []
27
+ string_start_quote_char = nil
27
28
 
28
- until @line.empty? || (delimiters.count == 0 && @line =~ end_re)
29
+ until @line.empty? || (delimiters.empty? && @line =~ end_re)
29
30
  char = @line[0]
30
31
 
31
32
  # backslash escaped delimiter
@@ -39,9 +40,15 @@ module Bade
39
40
  if RUBY_NOT_NESTABLE_DELIMITERS.include?(char) && delimiters.last == char
40
41
  # end char of not nestable delimiter
41
42
  delimiters.pop
43
+ string_start_quote_char = nil
42
44
  else
43
- # diving
44
- delimiters << char
45
+ # diving into nestable delimiters
46
+ delimiters << char if string_start_quote_char.nil?
47
+
48
+ # mark start char of the not nestable delimiters, for example strings
49
+ if RUBY_NOT_NESTABLE_DELIMITERS.include?(char) && string_start_quote_char.nil?
50
+ string_start_quote_char = char
51
+ end
45
52
  end
46
53
 
47
54
  when RUBY_END_DELIMITERS_RE
data/lib/bade/renderer.rb CHANGED
@@ -9,7 +9,7 @@ require_relative 'precompiled'
9
9
 
10
10
  module Bade
11
11
  class Renderer
12
- class LoadError < ::LoadError
12
+ class LoadError < ::RuntimeError
13
13
  # @return [String]
14
14
  #
15
15
  attr_reader :loading_path
@@ -210,9 +210,11 @@ module Bade
210
210
  # @return [Bade::AST::Document]
211
211
  #
212
212
  def _parsed_document(content, file_path)
213
- content = if file_path.nil? && content.nil?
214
- raise LoadError.new(nil, file_path, "Don't know what to do with nil values for both content and path")
215
- elsif !file_path.nil? && content.nil?
213
+ if file_path.nil? && content.nil?
214
+ raise LoadError.new(nil, file_path, "Don't know what to do with nil values for both content and path")
215
+ end
216
+
217
+ content = if !file_path.nil? && content.nil?
216
218
  File.read(file_path)
217
219
  else
218
220
  content
data/lib/bade/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bade
4
- VERSION = '0.2.2'.freeze
4
+ VERSION = '0.2.3'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bade
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Kříž
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-28 00:00:00.000000000 Z
11
+ date: 2016-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -125,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
125
  version: '0'
126
126
  requirements: []
127
127
  rubyforge_project:
128
- rubygems_version: 2.5.1
128
+ rubygems_version: 2.6.7
129
129
  signing_key:
130
130
  specification_version: 4
131
131
  summary: Minimalistic template engine for Ruby.