@Nonnull
	public static LLogicalOperator logicalOperatorFrom(Consumer<LLogicalOperatorBuilder> buildingFunction) {
		LLogicalOperatorBuilder builder = new LLogicalOperatorBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
@ Nonnull public static LLogicalOperator logicalOperatorFrom ( Consumer < LLogicalOperatorBuilder > buildingFunction ) { LLogicalOperatorBuilder builder = new LLogicalOperatorBuilder ( ) ; buildingFunction . accept ( builder ) ; return builder . build ( ) ; }
One of ways of creating builder. This is possibly the least verbose way where compiler should be able to guess the generic parameters.