speculate_about 0.1.2 → 0.2.0
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
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 669757a09c549512732274147c0b65dc3d71c3446b73490f961ae61b4e6a7d2b
|
4
|
+
data.tar.gz: 68b1e0f9babc9630616b14b16bf5ad60a9974983495dc7c575287dfbb29472a0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4253cedda25c3f32eaf71b0bbe5a99376f05e42e1dd8ab1e4ca818d12f99d6ac88404883ba25e74318d4de094d4614bad63ac397cde6f71f2835d32109586e5e
|
7
|
+
data.tar.gz: 2766bdc6aafb5f70c7ab73ec3b24e82ef025f6bbdfefd95de4d1bc797478de37de60ee60ff50c2895ead4c22e03117f432b6924252abae42419de5f46cf26ab9
|
@@ -3,7 +3,7 @@ class Speculations::Parser::Context
|
|
3
3
|
require_relative './context/example'
|
4
4
|
require_relative './context/setup'
|
5
5
|
|
6
|
-
attr_reader :filename, :level, :lnb, :name, :orig_filename, :parent, :setup
|
6
|
+
attr_reader :filename, :level, :lnb, :name, :orig_filename, :parent, :potential_name, :setup
|
7
7
|
|
8
8
|
def add_child(name:, lnb:)
|
9
9
|
raise "Illegal nesting" if parent
|
@@ -12,7 +12,8 @@ class Speculations::Parser::Context
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def add_example(lnb:, line:)
|
15
|
-
examples << Example.new(lnb: lnb, parent: self, line: line)
|
15
|
+
examples << Example.new(lnb: lnb, parent: self, line: line, name: potential_name)
|
16
|
+
@potential_name = nil
|
16
17
|
examples.last
|
17
18
|
end
|
18
19
|
|
@@ -38,6 +39,10 @@ class Speculations::Parser::Context
|
|
38
39
|
lines.flatten.map{ |line| "#{prefix}#{line.strip}" }.join("\n")
|
39
40
|
end
|
40
41
|
|
42
|
+
def set_name(potential_name)
|
43
|
+
@potential_name = potential_name
|
44
|
+
end
|
45
|
+
|
41
46
|
def set_setup(lnb:)
|
42
47
|
@setup = Setup.new(lnb: lnb, parent: self)
|
43
48
|
end
|
@@ -24,16 +24,18 @@ class Speculations::Parser::Context::Example
|
|
24
24
|
|
25
25
|
private
|
26
26
|
|
27
|
-
def initialize(lnb:, line:, parent:)
|
27
|
+
def initialize(lnb:, line:, parent:, name: nil)
|
28
28
|
@lnb = lnb
|
29
29
|
@parent = parent
|
30
|
-
@name = _compute_name(lnb: lnb, line: line, parent: parent)
|
30
|
+
@name = _compute_name(lnb: lnb, line: line, parent: parent, name: name)
|
31
31
|
end
|
32
32
|
|
33
|
-
def _compute_name(lnb:, parent:, line:)
|
34
|
-
_,
|
33
|
+
def _compute_name(lnb:, parent:, line:, name:)
|
34
|
+
_, name1 = NAMED_EXAMPLE.match(line).to_a
|
35
35
|
|
36
|
-
if
|
36
|
+
if name1&.empty? == false # SIC
|
37
|
+
"#{name1} (#{parent.orig_filename}:#{lnb.succ})"
|
38
|
+
elsif name
|
37
39
|
"#{name} (#{parent.orig_filename}:#{lnb.succ})"
|
38
40
|
else
|
39
41
|
"Example from #{parent.orig_filename}:#{lnb.succ}"
|
@@ -9,6 +9,7 @@ module Speculations::Parser::State extend self
|
|
9
9
|
EOBLOCK_RGX = %r[\A\s{0,3}```\s*\z]
|
10
10
|
EXAMPLE_RGX = %r[\A\s{0,3}```.*\s:example]
|
11
11
|
INCLUDE_RGX = %r[\A\s{0,3}```.*\s:include]
|
12
|
+
NAME_RGX = %r[\A\s{0,3}Example:\s+(.*)]
|
12
13
|
|
13
14
|
def before_match line
|
14
15
|
BEFORE_RGX =~ line
|
@@ -31,4 +32,8 @@ module Speculations::Parser::State extend self
|
|
31
32
|
def include_match line
|
32
33
|
INCLUDE_RGX =~ line
|
33
34
|
end
|
35
|
+
|
36
|
+
def potential_name line
|
37
|
+
NAME_RGX.match(line)
|
38
|
+
end
|
34
39
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: speculate_about
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Dober
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|