Closed
Description
Feature Description
In this call:
function add_suffix(traj::NamedTrajectory, suffix::String)
# Timesteps are appended because of bounds and initial/final constraints.
component_names = vcat(traj.state_names..., traj.control_names...)
components = add_suffix(component_names, traj, suffix)
controls = add_suffix(traj.control_names, suffix)
return NamedTrajectory(
components;
controls=controls,
timestep=traj.timestep isa Symbol ? add_suffix(traj.timestep, suffix) : traj.timestep,
bounds=add_suffix(traj.bounds, suffix),
initial=add_suffix(traj.initial, suffix),
final=add_suffix(traj.final, suffix),
goal=add_suffix(traj.goal, suffix)
)
end
there is no way to exclude certain symbols.
Other, underlying calls, allow for exclusion:
function add_suffix(
nt::NamedTuple,
suffix::String;
exclude::AbstractVector{<:Symbol}=Symbol[]
)
symbs = Tuple(k ∈ exclude ? k : add_suffix(k, suffix) for k ∈ keys(nt))
return NamedTuple{symbs}(values(nt))
end
It would be nice to have exclusion so, e.g. timesteps can be merged successfully using the merge
call.
Importance
1 (lowest)
What does this feature affect?
- construction
- methods
- plotting
- documentation
- tests
- other (please specify below)
Other information
No response