Author: Diffblue Ltd. More...
#include <generic_parameter_specialization_map.h>
Author: Diffblue Ltd.
A map from generic type parameters to their specializations (type arguments) We need to map from the names of parameters to the container (class or method) that contains them as well as the particular specialization of that parameter. However we do not need the name of the container, merely the full set of specializations for the parameters of that container. We store a stack of specializations for each container for a particular context. Finding the value for a type parameter is a matter of following the specialization for that parameter, unwinding the stack of its container as you do so and repeating until one reaches a non-generic type.
Definition at line 23 of file generic_parameter_specialization_map.h.
Insert a specialization for each type parameters of a container.
Author: Diffblue Ltd.
Definition at line 5 of file generic_parameter_specialization_map.cpp.
Pop the top of the specialization stack for the container associated with a given type parameter.
Definition at line 55 of file generic_parameter_specialization_map.cpp.
Pop the top of the specialization stack for a given container.
Definition at line 49 of file generic_parameter_specialization_map.cpp.
Output a generic_parameter_specialization_mapt wrapped in a generic_parameter_specialization_mapt::printert to a stream.
Definition at line 86 of file generic_parameter_specialization_map.h.
The list of containers and, for each one, the stack of lists of specializations.
Definition at line 37 of file generic_parameter_specialization_map.h.
A map from parameter names to container_paramt instances.
Definition at line 33 of file generic_parameter_specialization_map.h.