org.tools4j.groovytables.ReflectionCallPrecursor.groovy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of groovy-tables Show documentation
Show all versions of groovy-tables Show documentation
A groovy API which allows you to create lists of objects using a table like grammar.
package org.tools4j.groovytables
import groovy.transform.ToString
/**
* User: ben
* Date: 14/03/2016
* Time: 5:45 PM
*/
@ToString
class ReflectionCallPrecursor implements CallPrecursor>{
final Suitability suitability;
final Object[] rawArgs;
final ReflectionConstructionCall constructionMethod
final List> fieldSetPrecursors
final static NOT_SUITABLE = new ReflectionCallPrecursor(Suitability.NOT_SUITABLE, null, null, null);
ReflectionCallPrecursor(final Suitability suitability, final Object[] rawArgs, final ReflectionConstructionCall constructionMethod, List fieldSetPrecursors) {
this.suitability = suitability
this.rawArgs = rawArgs
this.constructionMethod = constructionMethod
this.fieldSetPrecursors = fieldSetPrecursors
}
TypeCoercionResult executeMethod() {
return new TypeCoercionResult(constructionMethod.construct(fieldSetPrecursors), suitability, constructionMethod);
}
}