diff --git a/src/AutGroup.jl b/src/AutGroup.jl index 04d6493..e646828 100644 --- a/src/AutGroup.jl +++ b/src/AutGroup.jl @@ -131,6 +131,29 @@ end # ############################################################################### +function (G::AutGroup)() + id = AutGroupElem(id_autsymbol()) + id.parent = G + return id +end + +function (G::AutGroup)(f::AutSymbol) + g = AutGroupElem(f) + g.parent = G + return g +end + +function (G::AutGroup)(g::AutGroupElem) + g.parent = G + return g +end + +############################################################################### +# +# Functional call overloads for evaluation of AutSymbol and AutGroupElem +# +############################################################################### + function (f::AutSymbol){T}(v::Vector{GWord{T}}) if f.pow == 0 return v @@ -145,12 +168,6 @@ function (F::AutGroupElem)(v::Vector) return v end -function (G::AutGroup)(f::AutSymbol) - g = AutGroupElem(f) - g.parent = G - return g -end - ############################################################################### # # Basic manipulation