Por que essa função retorna um valor (de propriedade)?

o código de:Genie, como repetir uma string N vezes como uma matriz de stringsGenie, como repetir uma string N vezes como uma matriz de strings

def repeatwithsep (e: string, n: int, separator: string): string
    var elen = e.length;
    var slen = separator.length;
    var a = new StringBuilder.sized ((elen * n) + (slen * (n - 1)) + 1);
    for var i = 0 to (n - 1)
        if i != 0
            a.append_len (separator, slen)
        a.append_len (e, elen)
    return (owned) a.str

var a é uma variável local, quandoa sair do escopo, será destruído. por que essa função

return (propriedade) a.str

qual é a diferença entre

retornar a.str

return (propriedade) a.str

qual é o benefício de (propriedade)

questionAnswers(1)

yourAnswerToTheQuestion