示例#1
0
void Expression(CPU &cpu, IO &io, struct Unit &unit){
    Term(cpu, io, unit);
    io.skipWhitespace();
    {
expression_start:
        if(io.peek('+'))
            io.callWithPushNumber<Add>(cpu, "Expression", unit);
        else if(io.peek('-'))
            io.callWithPushNumber<Subtract>(cpu, "Expression", unit);
        else {
            io.skipWhitespace();
            return;
        }
        io.skipWhitespace();
        goto expression_start;
    }
}