operator + method

dynamic operator +(
  1. Object o
)

Implementation

operator +(Object o){
   switch(o){
    case NamedLine nl:
      return this + nl.expression;
    case (double, PxUnit) ldouble:
      return this + Expression.literal(ldouble);
    case (int, PxUnit) lint:
      return this + Expression.literal(pxIntToDouble(lint));
    case double p:
      return this + Expression.percent(p);
    case Expression exp:
      return Expression(landscapePercent: landscapePercent + exp.landscapePercent, landscapeHpc: landscapeHpc + exp.landscapeHpc, landscapeWpc: landscapeWpc + exp.landscapeWpc, landscapePx: landscapePx + exp.landscapePx,
        portraitPercent: portraitPercent + exp.portraitPercent, portraitHpc: portraitHpc + exp.portraitHpc, portraitWpc: portraitWpc + exp.portraitWpc, portraitPx: portraitPx + exp.portraitPx
      );
   }
}