Sha256: f57a1113ab693ef306920c009d448d43be5287a810ed42fc4b625c44d1ea8146
Contents?: true
Size: 564 Bytes
Versions: 7
Compression:
Stored size: 564 Bytes
Contents
/* description: Parses end executes mathematical expressions. */ %left '+' '-' %left '*' '/' %left '^' %left UMINUS %% S : e EOF {print($1); return $1;} ; e : e '+' e {$$ = $1+$3;} | e '-' e {$$ = $1-$3;} | e '*' e {$$ = $1*$3;} | e '/' e {$$ = $1/$3;} | e '^' e {$$ = Math.pow($1, $3);} | '-' e {$$ = -$2;} %prec UMINUS | '(' e ')' {$$ = $2;} | NUMBER {$$ = Number(yytext);} | E {$$ = Math.E;} | PI {$$ = Math.PI;} ;
Version data entries
7 entries across 7 versions & 1 rubygems