cbc/net/loveruby/cflat/ast/AbstractAssignNode.java

34 lines
638 B
Java

package net.loveruby.cflat.ast;
import net.loveruby.cflat.type.*;
abstract public class AbstractAssignNode extends ExprNode {
ExprNode lhs, rhs;
public AbstractAssignNode(ExprNode lhs, ExprNode rhs) {
super();
this.lhs = lhs;
this.rhs = rhs;
}
public Type type() {
return lhs.type();
}
public ExprNode lhs() {
return lhs;
}
public ExprNode rhs() {
return rhs;
}
public Location location() {
return lhs.location();
}
protected void _dump(Dumper d) {
d.printMember("lhs", lhs);
d.printMember("rhs", rhs);
}
}