Search in sources :

Example 1 with ITypeAssigner

use of org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner in project xtext-xtend by eclipse.

the class ExtensionAwareClosureTypeComputer method createUnknownClosureTypeHelper.

@Override
protected UnknownClosureTypeHelper createUnknownClosureTypeHelper() {
    return new UnknownClosureTypeHelper(getClosure(), getExpectation(), getState()) {

        @Override
        protected ITypeComputationState assignParameters(ITypeAssigner typeAssigner) {
            ITypeComputationState result = super.assignParameters(typeAssigner);
            addExtensions(result);
            return result;
        }
    };
}
Also used : ITypeAssigner(org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner) ITypeComputationState(org.eclipse.xtext.xbase.typesystem.computation.ITypeComputationState) UnknownClosureTypeHelper(org.eclipse.xtext.xbase.typesystem.computation.UnknownClosureTypeHelper)

Example 2 with ITypeAssigner

use of org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner in project xtext-xtend by eclipse.

the class ExtensionAwareClosureTypeComputer method createClosureWithoutExpectationHelper.

@Override
protected ClosureWithoutExpectationHelper createClosureWithoutExpectationHelper() {
    return new ClosureWithoutExpectationHelper(getClosure(), getExpectation(), getState()) {

        @Override
        protected ITypeComputationState assignParameters(ITypeAssigner typeAssigner, FunctionTypeReference incompleteClosureType) {
            ITypeComputationState result = super.assignParameters(typeAssigner, incompleteClosureType);
            addExtensions(result);
            return result;
        }
    };
}
Also used : ITypeAssigner(org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner) ITypeComputationState(org.eclipse.xtext.xbase.typesystem.computation.ITypeComputationState) FunctionTypeReference(org.eclipse.xtext.xbase.typesystem.references.FunctionTypeReference) ClosureWithoutExpectationHelper(org.eclipse.xtext.xbase.typesystem.computation.ClosureWithoutExpectationHelper)

Example 3 with ITypeAssigner

use of org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner in project xtext-xtend by eclipse.

the class ExtensionAwareClosureTypeComputer method createClosureWithExpectationHelper.

@Override
protected ClosureWithExpectationHelper createClosureWithExpectationHelper(JvmOperation operation) {
    return new ClosureWithExpectationHelper(getClosure(), operation, getExpectation(), getState()) {

        @Override
        protected ITypeComputationState assignParameters(ITypeAssigner typeAssigner) {
            ITypeComputationState result = super.assignParameters(typeAssigner);
            addExtensions(result);
            return result;
        }
    };
}
Also used : ITypeAssigner(org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner) ITypeComputationState(org.eclipse.xtext.xbase.typesystem.computation.ITypeComputationState) ClosureWithExpectationHelper(org.eclipse.xtext.xbase.typesystem.computation.ClosureWithExpectationHelper)

Aggregations

ITypeAssigner (org.eclipse.xtext.xbase.typesystem.computation.ITypeAssigner)3 ITypeComputationState (org.eclipse.xtext.xbase.typesystem.computation.ITypeComputationState)3 ClosureWithExpectationHelper (org.eclipse.xtext.xbase.typesystem.computation.ClosureWithExpectationHelper)1 ClosureWithoutExpectationHelper (org.eclipse.xtext.xbase.typesystem.computation.ClosureWithoutExpectationHelper)1 UnknownClosureTypeHelper (org.eclipse.xtext.xbase.typesystem.computation.UnknownClosureTypeHelper)1 FunctionTypeReference (org.eclipse.xtext.xbase.typesystem.references.FunctionTypeReference)1