5 public class SizeofExpr extends Expr {
9 public SizeofExpr(SetExpr setexpr) {
10 if (setexpr == null) {
11 throw new NullPointerException();
14 this.setexpr = setexpr;
17 public Set getRequiredDescriptors() {
18 return setexpr.getRequiredDescriptors();
21 public void generate(CodeWriter writer, VarDescriptor dest) {
22 setexpr.generate_size(writer, dest);
25 public void prettyPrint(PrettyPrinter pp) {
27 setexpr.prettyPrint(pp);
31 public TypeDescriptor typecheck(SemanticAnalyzer sa) {
32 this.td = ReservedTypeDescriptor.INT;