package org.jtwig.functions.impl.logical;
import org.jtwig.exceptions.ResolveValueException;
import org.jtwig.functions.FunctionRequest;
import org.jtwig.functions.SimpleJtwigFunction;
import org.jtwig.value.Undefined;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class DefinedFunction extends SimpleJtwigFunction {
private final Logger log = LoggerFactory.getLogger(DefinedFunction.class);
@Override
public String name() {
return "defined";
}
@Override
public Boolean execute(FunctionRequest request) {
request.maximumNumberOfArguments(1);
request.minimumNumberOfArguments(1);
try {
return request.get(0) != Undefined.UNDEFINED;
} catch (ResolveValueException e){
log.debug("Unable to evaluate expression", e);
return false;
}
}
}