titanscssc::op_color_color PHP Method

op_color_color() protected method

protected op_color_color ( $op, $left, $right )
    protected function op_color_color($op, $left, $right)
    {
        $out = array('color');
        foreach (range(1, 3) as $i) {
            $lval = isset($left[$i]) ? $left[$i] : 0;
            $rval = isset($right[$i]) ? $right[$i] : 0;
            switch ($op) {
                case '+':
                    $out[] = $lval + $rval;
                    break;
                case '-':
                    $out[] = $lval - $rval;
                    break;
                case '*':
                    $out[] = $lval * $rval;
                    break;
                case '%':
                    $out[] = $lval % $rval;
                    break;
                case '/':
                    if ($rval == 0) {
                        $this->throwError("color: Can't divide by zero");
                    }
                    $out[] = $lval / $rval;
                    break;
                case "==":
                    return $this->op_eq($left, $right);
                case "!=":
                    return $this->op_neq($left, $right);
                default:
                    $this->throwError("color: unknown op {$op}");
            }
        }
        if (isset($left[4])) {
            $out[4] = $left[4];
        } elseif (isset($right[4])) {
            $out[4] = $right[4];
        }
        return $this->fixColor($out);
    }
titanscssc