operator << method

Express operator <<(
  1. Object other
)

Implementation

Express operator <<(Object other) {
  switch (other) {
    case String s:
      return this.addText(s);
    case num n:
      return this.addText(n.toString());
    case Express ex:
      return this.addExpress(ex);
    case TableColumn c:
      return this.addText(c.fullname);
    case Type t:
      return this.addText(TableProto.of(t).nameSQL);
    case TableProto t:
      return this.addText(t.nameSQL);
    case AnyList ls:
      AnyList ls2 = ls.filter((e) => e != null);
      for (int i = 0; i < ls2.length; ++i) {
        if (i != 0) this << ",";
        this << ls[i];
      }
      return this;
  }
  errorSQL("Operator '<<' only support String/Express/TableColumn/Type/FieldProto/List<dynamic>");
}