evaluate

fun <T : Any> BooleanExpression<T>.evaluate(block: (T) -> Boolean): Boolean
fun BooleanExpression<BTerm>.evaluate(variables: Set<String>, typename: String?): Boolean
fun BooleanExpression<BTerm>.evaluate(    variables: Set<String>,     typename: String?,     adapterContext: AdapterContext,     path: List<Any>?): Boolean