jmejiao5-rubycalc 0.0.2 → 0.0.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 +4 -4
- data/lib/parser.rb +8 -7
- data/lib/scanner.rb +4 -4
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4f725d9b06b4be7a783e6630192d41258de624c3
|
4
|
+
data.tar.gz: 470edb50f9000659d1d85f078b556ad3325e79b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf5f53c1270ec3163061f1b80b4489577b71c3e22688a35abd7197cf76b79e693a8ad4abad785945b9e4bb186e78632e0dd2f3565f690aecad2ed8247ca75920
|
7
|
+
data.tar.gz: 6c6daf29a06eb0dccbf32a9a278bb130ddee8bdff960123973dc2852d82ff519f245f7dbf21386732f1626a493f48e4bad5b70667650552fa920bbbca2197e9e
|
data/lib/parser.rb
CHANGED
@@ -46,11 +46,11 @@ class Parser
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def Term()
|
49
|
-
ResTerm(Storable())
|
49
|
+
return ResTerm(Storable())
|
50
50
|
end
|
51
51
|
|
52
52
|
def RestTerm(e)
|
53
|
-
t = @scan.getToken
|
53
|
+
t = @scan.getToken()
|
54
54
|
|
55
55
|
if t.type == :times then
|
56
56
|
return RestTerm(TimesNode.new(e,Storable()))
|
@@ -58,10 +58,12 @@ class Parser
|
|
58
58
|
|
59
59
|
if t.type == :divide then
|
60
60
|
return RestTerm(DivideNode.new(e,Storable()))
|
61
|
+
end
|
61
62
|
|
62
|
-
@scan.putBackToken
|
63
|
+
@scan.putBackToken()
|
64
|
+
|
65
|
+
return e
|
63
66
|
|
64
|
-
end
|
65
67
|
end
|
66
68
|
|
67
69
|
def Storable()
|
@@ -78,8 +80,7 @@ class Parser
|
|
78
80
|
end
|
79
81
|
|
80
82
|
@scan.putBackToken
|
81
|
-
|
82
|
-
factor
|
83
|
+
return factor
|
83
84
|
end
|
84
85
|
|
85
86
|
def Factor()
|
@@ -99,7 +100,7 @@ class Parser
|
|
99
100
|
|
100
101
|
if t.ype == :lparen then
|
101
102
|
expr = Expr()
|
102
|
-
t = @scan.getToken
|
103
|
+
t = @scan.getToken()
|
103
104
|
if t.type == :rparen then
|
104
105
|
return expr
|
105
106
|
else
|
data/lib/scanner.rb
CHANGED
@@ -30,7 +30,7 @@ class Scanner
|
|
30
30
|
return @lastToken
|
31
31
|
end
|
32
32
|
|
33
|
-
|
33
|
+
until foundOne do
|
34
34
|
@colCount = @colCount + 1
|
35
35
|
case state
|
36
36
|
when 0
|
@@ -117,20 +117,20 @@ class Scanner
|
|
117
117
|
if c.nil? then
|
118
118
|
return false
|
119
119
|
end
|
120
|
-
(?a <= c and c <= ?z) or (?A <= c and c <= ?Z)
|
120
|
+
return ((?a <= c and c <= ?z) or (?A <= c and c <= ?Z))
|
121
121
|
end
|
122
122
|
|
123
123
|
def isDigit(c)
|
124
124
|
if c.nil? then
|
125
125
|
return false
|
126
126
|
end
|
127
|
-
?0 <= c and c <= ?9
|
127
|
+
return (?0 <= c and c <= ?9)
|
128
128
|
end
|
129
129
|
|
130
130
|
def isWhiteSpace(c)
|
131
131
|
if c.nil? then
|
132
132
|
return false
|
133
133
|
end
|
134
|
-
c == ?\ or c == ?\n or c == ?\t
|
134
|
+
return (c == ?\ or c == ?\n or c == ?\t)
|
135
135
|
end
|
136
136
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jmejiao5-rubycalc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kent D. Lee - Jose Alberto Mejia
|
@@ -17,13 +17,13 @@ executables:
|
|
17
17
|
extensions: []
|
18
18
|
extra_rdoc_files: []
|
19
19
|
files:
|
20
|
-
-
|
20
|
+
- lib/token.rb
|
21
|
+
- lib/scanner.rb
|
21
22
|
- lib/ast.rb
|
22
|
-
- lib/calcex.rb
|
23
|
-
- lib/calculator.rb
|
24
23
|
- lib/parser.rb
|
25
|
-
- lib/
|
26
|
-
- lib/
|
24
|
+
- lib/calculator.rb
|
25
|
+
- lib/calcex.rb
|
26
|
+
- bin/rubycalc
|
27
27
|
homepage: http://www1.eafit.edu.co/fcardona/cursos/st0244/rubycal
|
28
28
|
licenses:
|
29
29
|
- ARTISTIC
|
@@ -34,17 +34,17 @@ require_paths:
|
|
34
34
|
- lib
|
35
35
|
required_ruby_version: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- -
|
37
|
+
- - '>='
|
38
38
|
- !ruby/object:Gem::Version
|
39
39
|
version: '0'
|
40
40
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
41
41
|
requirements:
|
42
|
-
- -
|
42
|
+
- - '>='
|
43
43
|
- !ruby/object:Gem::Version
|
44
44
|
version: '0'
|
45
45
|
requirements: []
|
46
46
|
rubyforge_project:
|
47
|
-
rubygems_version: 2.
|
47
|
+
rubygems_version: 2.0.14.1
|
48
48
|
signing_key:
|
49
49
|
specification_version: 4
|
50
50
|
summary: Another calculator in ruby
|