code: func Op(o Operation, field string, vleft ...interface{}) Ruler {
  	if len(vleft) > 1 {
  		panic("Op accept only zero or one val")
  	}
  	var val reflect.Value
  	if len(vleft) == 1 {
  		val = reflect.Indirect(reflect.ValueOf(vleft[0]))
  		if val.IsValid() && val.Kind() == reflect.Interface {
  			val = val.Elem()
  		}
  	}
  	return &op{
  		field:  field,
  		vright: val,
  		op:     o,
  	}
  }
docs: // Op is an operation in some field and with some value.