docs: public final void mRULE_ML_COMMENT() throws RecognitionException {
          try {
              int _type = RULE_ML_COMMENT;
              int _channel = DEFAULT_TOKEN_CHANNEL;
              // InternalSARL.g:48797:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
              // InternalSARL.g:48797:19: '/*' ( options {greedy=false; } : . )* '*/'
              {
              match("/*"); 
  
              // InternalSARL.g:48797:24: ( options {greedy=false; } : . )*
              loop49:
              do {
                  int alt49=2;
                  int LA49_0 = input.LA(1);
  
                  if ( (LA49_0=='*') ) {
                      int LA49_1 = input.LA(2);
  
                      if ( (LA49_1=='/') ) {
                          alt49=2;
                      }
                      else if ( ((LA49_1>='\u0000' && LA49_1<='.')||(LA49_1>='0' && LA49_1<='\uFFFF')) ) {
                          alt49=1;
                      }
  
  
                  }
                  else if ( ((LA49_0>='\u0000' && LA49_0<=')')||(LA49_0>='+' && LA49_0<='\uFFFF')) ) {
                      alt49=1;
                  }
  
  
                  switch (alt49) {
              	case 1 :
              	    // InternalSARL.g:48797:52: .
              	    {
              	    matchAny(); 
  
              	    }
              	    break;
  
              	default :
              	    break loop49;
                  }
              } while (true);
  
              match("*/"); 
  
  
              }
  
              state.type = _type;
              state.channel = _channel;
          }
          finally {
          }
      }