Class BlockType

    • Field Detail

      • _relativeSignature

        private java.lang.String _relativeSignature
      • _relativeSignatureSansBlock

        private java.lang.String _relativeSignatureSansBlock
      • _argNames

        private java.lang.String[] _argNames
    • Constructor Detail

      • BlockType

        public BlockType​(IType returnType,
                         IType[] iIntrinsicTypes,
                         java.util.List<java.lang.String> argNames,
                         java.util.List<IExpression> defValues)
      • BlockType

        public BlockType​(IType returnType,
                         IType[] iIntrinsicTypes,
                         java.lang.String[] argNames,
                         IExpression[] defValues)
      • BlockType

        private BlockType​(FunctionType source,
                          TypeVarToTypeMap actualParamByVarName,
                          boolean bKeepTypeVars,
                          java.util.List<java.lang.String> argNames,
                          java.util.List<IExpression> defValues)
    • Method Detail

      • parameterize

        public FunctionType parameterize​(FunctionType source,
                                         TypeVarToTypeMap actualParamByVarName,
                                         boolean bKeepTypeVars)
        Description copied from class: FunctionType
        Create a new FunctionType based on the type parameters assigned to the type vars in actualParamByVarName.

        It is important to note that this form of parameterization is different from calling getParameterizedType(). The latter creates a parameterization of a generic function e.g., function foo<T>() where T is a type var on the function.

        This here method is for parameterizing a function type that has references to external type vars e.g., class Fred<T> { function foo( t : T ){} } where T is a type var on the containing class.

        Overrides:
        parameterize in class FunctionType
        Parameters:
        source - The raw form of a FunctionType having possible references to type vars defined in its containing class.
        actualParamByVarName - A map of concrete types by type var name e.g., "T" -> String
        bKeepTypeVars - Indicates whether or not a type var referenced in the source FunctionType that cannot be resolved via the actualParamByVarName map should remain as a TypeVariableType or should be converted to its bounding type.
        Returns:
        A parameterized version of the source FunctionType
      • getName

        public java.lang.String getName()
        Description copied from interface: IType
        The fully qualified name of this intrinsic type.
        Specified by:
        getName in interface IType
        Overrides:
        getName in class FunctionType
      • getRelativeName

        public java.lang.String getRelativeName()
        Description copied from interface: IType
        The relative or unqualified name. For a class this should be just the class name without the package name.
        Specified by:
        getRelativeName in interface IType
        Overrides:
        getRelativeName in class FunctionType
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class FunctionType