Jump to content

Arithmetic evaluation: Difference between revisions

m
m (→‎{{header|Wren}}: Minor tidy)
imported>Arakov
Line 1,904:
^ weak self.newBracket().gotoStarting()
}
:! {
^ weak self.newToken().append(ch).gotoToken()
}
Line 1,930:
^ weak self.newFraction().gotoOperator()
}
:! {
^ weak self.append:(ch)
}
}
Line 1,947:
^ weak self.newToken().append("0").newDifference().gotoOperator()
}
:! {
^ weak self.newToken().append:(ch).gotoToken()
}
}
Line 2,014:
{
if (_level < 10)
{ InvalidArgumentException.new:("Invalid expression").raise() };
_level := _level - 10
Line 2,023:
if(ch >= $48 && ch < $58)
{
_token.append:(ch )
}
else
{
InvalidArgumentException.new:("Invalid expression").raise()
}
}
Line 2,033:
append(string s)
{
s.forEach::(ch){ self.append:(ch) }
}
Line 2,123:
var scope := Scope.new(self);
 
text.forEach::(ch){ scope.eval:(ch) };
 
^ scope.Number
Line 2,138:
try
{
console.printLine("=",parser.run:(text))
}
catch(Exception e)
{
console.writeLine:("Invalid Expression")
};
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.