code: @Override
      public FieldTextBuilder AND(final FieldText fieldText) {
          Validate.notNull(fieldText, "FieldText should not be null");
  
          if(fieldText == this || toString().equals(fieldText.toString())) {
              return this;
          }
  
          if(isEmpty()) {
              return setFieldText(fieldText);
          }
  
          if(fieldText.isEmpty()) {
              return this;
          }
  
          if(MATCHNOTHING.equals(this) || MATCHNOTHING.equals(fieldText)) {
              return setFieldText(MATCHNOTHING);
          }
  
          return binaryOperation("AND", fieldText);
      }
docs: Appends the specified fieldtext onto the builder using the AND operator. Parentheses are omitted where possible
  and logical simplifications are made in certain cases:
  <p>
  <pre>(A AND A) {@literal =>} A</pre>
  <pre>(* AND A) {@literal =>} A</pre>
  <pre>(0 AND A) {@literal =>} 0</pre>
  
  @param fieldText A fieldtext expression or specifier.
  @return {@code this}