/// <summary> /// Constructor for CallGraphEdge objects. /// Strips position info from the given type parameter resolutions. /// </summary> internal CallGraphEdge(TypeParameterResolutions paramResolutions, Range referenceRange) : base(referenceRange) { // Remove position info from type parameter resolutions this.ParamResolutions = paramResolutions.ToImmutableDictionary( kvp => kvp.Key, kvp => StripPositionInfo.Apply(kvp.Value)); }
/// <summary> /// Constructor for ConcreteCallGraphNode objects. /// Strips position info from the given type parameter resolutions. /// </summary> public ConcreteCallGraphNode(QsQualifiedName callableName, QsSpecializationKind kind, TypeParameterResolutions paramResolutions) : base(callableName) { this.Kind = kind; // Remove position info from type parameter resolutions this.ParamResolutions = paramResolutions.ToImmutableDictionary( kvp => kvp.Key, kvp => StripPositionInfo.Apply(kvp.Value)); }
public override TypeParameterResolutions OnTypeParamResolutions(TypeParameterResolutions typeParams) { // We don't want to process the keys of type parameter resolutions return(typeParams.ToImmutableDictionary(kvp => kvp.Key, kvp => this.Types.OnType(kvp.Value))); }