(nodes)
return result
This is almost native_concat from the NativeTemplate, except in the
    special case of a single argument that is a quoted string and returns a
    string, the quotes are re-inserted.
This is almost native_concat from the NativeTemplate, except in the
    special case of a single argument that is a quoted string and returns a
    string, the quotes are re-inserted.
This is almost native_concat from the NativeTemplate except in the special case of a single argument that is a quoted string and returns a string the quotes are re - inserted .
def quoted_native_concat(nodes):
    """This is almost native_concat from the NativeTemplate, except in the
    special case of a single argument that is a quoted string and returns a
    string, the quotes are re-inserted.
    """
    head = list(islice(nodes, 2))

    if not head:
        return ''

    if len(head) == 1:
        raw = head[0]
        if isinstance(raw, TextMarker):
            return str(raw)
        elif not isinstance(raw, NativeMarker):
            # return non-strings as-is
            return raw
    else:
        # multiple nodes become a string.
        return "".join([str(v) for v in chain(head, nodes)])

    try:
        result = literal_eval(raw)
    except (ValueError, SyntaxError, MemoryError):
        result = raw
    if isinstance(raw, BoolMarker) and not isinstance(result, bool):
        raise JinjaRenderingException(
            f"Could not convert value '{raw!s}' into type 'bool'"
        )
    if isinstance(raw, NumberMarker) and not _is_number(result):
        raise JinjaRenderingException(
            f"Could not convert value '{raw!s}' into type 'number'"
        )

    return result
def quoted_native_concat ( nodes ) : head = list ( islice ( nodes , 2 ) ) if not head : return '' if len ( head ) == 1 : raw = head [ 0 ] if isinstance ( raw , TextMarker ) : return str ( raw ) elif not isinstance ( raw , NativeMarker ) : # return non-strings as-is return raw else : # multiple nodes become a string. return "" . join ( [ str ( v ) for v in chain ( head , nodes ) ] ) try : result = literal_eval ( raw ) except ( ValueError , SyntaxError , MemoryError ) : result = raw if isinstance ( raw , BoolMarker ) and not isinstance ( result , bool ) : raise JinjaRenderingException ( f"Could not convert value '{raw!s}' into type 'bool'" ) if isinstance ( raw , NumberMarker ) and not _is_number ( result ) : raise JinjaRenderingException ( f"Could not convert value '{raw!s}' into type 'number'" ) return result