00001: package clogs.ast;
00002: 
00003: import clogs.util.List;
00004: 
00005: 
00006: public class StatExp extends Stat
00007: {
00008:   public final Exp exp;
00009: 
00010: 
00011:   public StatExp (Exp exp)
00012:   {
00013:     this (List.<String>nil (), exp);
00014:   }
00015: 
00016: 
00017:   StatExp (List<String> labels, Exp exp)
00018:   {
00019:     super (labels);
00020:     clogs.util.NonNull.check (exp);
00021:     this.exp = exp;
00022:   }
00023: 
00024: 
00025:   public Stat removeLabels ()
00026:   {
00027:     return new StatExp (List.<String> nil (), exp);
00028:   }
00029: 
00030: 
00031:   public Stat addLabel (String label)
00032:   {
00033:     return new StatExp (labels.cons (label), exp);
00034:   }
00035: }
00036: