class HiveModule implements Module {

	@Override
	public Optional<FunctionDefinition> getFunctionDefinition(String name) {
		if (BUILT_IN_FUNC_BLACKLIST.contains(name)) {
			return Optional.empty();
		}
		Optional<FunctionInfo> info = hiveShim.getBuiltInFunctionInfo(name);

		return info.map(functionInfo -> factory.createFunctionDefinitionFromHiveFunction(name, functionInfo.getFunctionClass().getName()));
	}

	public  HiveModule();
	public  HiveModule(String hiveVersion);

}