public AstNodeListImpl(T... children) { for (T x : children) add(x); }
public AstNodeListImpl(T a, T b, T c, T d) { add(a); add(b); add(c); add(d); }
public AstNodeListImpl(T car, Pair<? extends T> cdr) { add(car); addAll(cdr); }
public AstNodeListImpl(T a, T b) { add(a); add(b); }
public AstNodeListImpl(T child) { add(child); }