src/Expression.php
protected function _escapeSoft($value)
    {
        // supports array
        if (is_array($value)) {
            return array_map(__METHOD__, $value);
        }

        // in some cases we should not escape
        if ($this->isUnescapablePattern($value)) {
            return $value;
        }

        if (is_string($value) && strpos($value, '.') !== false) {
            return implode('.', array_map(__METHOD__, explode('.', $value)));
        }

        return $this->escape_char.trim($value).$this->escape_char;
    }
protected function _escapeSoft($value)
    {
        // supports array
        if (is_array($value)) {
            return array_map(__METHOD__, $value);
        }

        // in some cases we should not escape
        if ($this->isUnescapablePattern($value)) {
            return $value;
        }

        if (is_string($value) && strpos($value, '.') !== false) {
            return implode('.', array_map(__METHOD__, explode('.', $value)));
        }

        return $this->escape_char.trim($value).$this->escape_char;
    }
Soft-escaping SQL identifier. This method will attempt to put
escaping char around the identifier, however will not do so if you
are using special characters like ".", "(" or escaping char.

It will smartly escape table.field type of strings resulting
in "table"."field".

@param mixed $value Any string or array of strings

@return string|array Escaped string or array of strings