Skip to content

Commit 39dfd96

Browse files
committed
refactors interpreter pattern
1 parent 450f410 commit 39dfd96

File tree

4 files changed

+14
-14
lines changed

4 files changed

+14
-14
lines changed

Interpreter/Context/TokenReader.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,14 @@ public IExpression ReadToken(List<string> tokenList)
1414
private IExpression ReadNextToken(List<string> tokenList)
1515
{
1616
int i;
17+
1718
if (int.TryParse(tokenList.First(), out i)) //if the token is integer (terminal)
1819
{
1920
tokenList.RemoveAt(0); //process terminal expression
2021
return new NumberExpression(i);
2122
}
22-
else
23-
{
24-
return ReadNonTerminal(tokenList); //process nonTerminal expression
25-
}
23+
24+
return ReadNonTerminal(tokenList); //process nonTerminal expression
2625
}
2726

2827
private IExpression ReadNonTerminal(List<string> tokenList)

Interpreter/Expression/AddExpression.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
{
33
public class AddExpression : IExpression
44
{
5-
IExpression leftExpression;
6-
IExpression rightExpression;
5+
readonly IExpression leftExpression;
6+
readonly IExpression rightExpression;
77

88
public AddExpression(IExpression left, IExpression right)
99
{

Interpreter/Expression/NumberExpression.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,16 @@
22
{
33
public class NumberExpression : IExpression
44
{
5-
int number;
5+
readonly int _number;
6+
67
public NumberExpression(int i)
78
{
8-
number = i;
9+
_number = i;
910
}
1011

1112
int IExpression.Interpret()
1213
{
13-
return number;
14+
return _number;
1415
}
1516
}
1617
}

Interpreter/Expression/SubtractExpression.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@
22
{
33
public class SubtractExpression : IExpression
44
{
5-
IExpression leftExpression;
6-
IExpression rightExpression;
5+
readonly IExpression _leftExpression;
6+
readonly IExpression _rightExpression;
77

88
public SubtractExpression(IExpression left, IExpression right)
99
{
10-
leftExpression = left;
11-
rightExpression = right;
10+
_leftExpression = left;
11+
_rightExpression = right;
1212
}
1313

1414
int IExpression.Interpret()
1515
{
16-
return leftExpression.Interpret() - rightExpression.Interpret();
16+
return _leftExpression.Interpret() - _rightExpression.Interpret();
1717
}
1818
}
1919
}

0 commit comments

Comments
 (0)