protected function _compile($part, ValueBinder $generator)
    {
        if ($part instanceof ExpressionInterface) {
            $part = $part->sql($generator);
        } elseif (is_array($part)) {
            $placeholder = $generator->placeholder('param');
            $generator->bind($placeholder, $part['value'], $part['type']);
            $part = $placeholder;
        }

        return $part;
    }