code: public StateConfiguration<S, T> permitIfOtherwiseIgnore(T trigger, S destinationState, final FuncBoolean guard) {
          enforceNotIdentityTransition(destinationState);
          ignoreIf(trigger, new FuncBoolean() {
              @Override
              public boolean call() {
                  return !guard.call();
              }
          });
          return publicPermitIf(trigger, destinationState, guard);
      }
docs: Accept the specified trigger and transition to the destination state if guard true, otherwise ignore
  
  @param trigger          The accepted trigger
  @param destinationState The state that the trigger will cause a transition to
  @param guard            Function that must return true in order for the trigger to be accepted
  @return The receiver