private void CompileBinaryExpression()
{
this.CompileUnaryExpression();
string mthname;
Token token;
token = this.NextToken();
while (token != null && (token.Type == TokenType.Operator || (token.Type == TokenType.Punctuation && token.Value == "|") || (token.Type == TokenType.Name && !token.Value.EndsWith(":") && token.Value != "self")))
{
mthname = token.Value;
this.CompileUnaryExpression();
if (token.Type == TokenType.Operator)
this.block.CompileBinarySend(mthname);
else
this.block.CompileSend(mthname);
token = this.NextToken();
}
if (token != null)
{
this.PushToken(token);
}
}