Class CacheFunDef.CacheFunResolver

    • Constructor Detail

      • CacheFunResolver

        CacheFunResolver()
    • Method Detail

      • resolve

        public FunDef resolve​(Exp[] args,
                              Validator validator,
                              List<Resolver.Conversion> conversions)
        Description copied from interface: Resolver
        Given a particular set of arguments the function is applied to, returns the correct overloaded form of the function.

        The method adds an item to conversions every time it performs an implicit type-conversion. If there are several candidate functions with the same signature, the validator will choose the one which used the fewest implicit conversions.

        Parameters:
        args - Expressions which this function call is applied to.
        validator - Validator
        conversions - List of implicit conversions performed (out)
        Returns:
        The function definition which matches these arguments, or null if no function definition that this resolver knows about matches.
      • requiresExpression

        public boolean requiresExpression​(int k)
        Description copied from interface: Resolver
        Returns whether a particular argument must be a scalar expression. Returns false if any of the variants of this resolver allows a set as its kth argument; true otherwise.
        Specified by:
        requiresExpression in interface Resolver
        Overrides:
        requiresExpression in class ResolverBase