docs: public final AntlrDatatypeRuleToken ruleMethodCallLiteral() throws RecognitionException {
          AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
  
          Token kw=null;
          AntlrDatatypeRuleToken this_FQN_0 = null;
  
          AntlrDatatypeRuleToken this_Argument_2 = null;
  
          AntlrDatatypeRuleToken this_Argument_4 = null;
  
          AntlrDatatypeRuleToken this_MethodCallLiteral_7 = null;
  
  
           enterRule(); 
              
          try {
              // InternalSimpleExpressions.g:643:28: ( (this_FQN_0= ruleFQN (kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )? )? ) )
              // InternalSimpleExpressions.g:644:1: (this_FQN_0= ruleFQN (kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )? )? )
              {
              // InternalSimpleExpressions.g:644:1: (this_FQN_0= ruleFQN (kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )? )? )
              // InternalSimpleExpressions.g:645:5: this_FQN_0= ruleFQN (kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )? )?
              {
               
                      newCompositeNode(grammarAccess.getMethodCallLiteralAccess().getFQNParserRuleCall_0()); 
                  
              pushFollow(FOLLOW_11);
              this_FQN_0=ruleFQN();
  
              state._fsp--;
  
  
              		current.merge(this_FQN_0);
                  
               
                      afterParserOrEnumRuleCall();
                  
              // InternalSimpleExpressions.g:655:1: (kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )? )?
              int alt12=2;
              int LA12_0 = input.LA(1);
  
              if ( (LA12_0==13) ) {
                  alt12=1;
              }
              switch (alt12) {
                  case 1 :
                      // InternalSimpleExpressions.g:656:2: kw= '(' (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )? kw= ')' (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )?
                      {
                      kw=(Token)match(input,13,FOLLOW_12); 
  
                              current.merge(kw);
                              newLeafNode(kw, grammarAccess.getMethodCallLiteralAccess().getLeftParenthesisKeyword_1_0()); 
                          
                      // InternalSimpleExpressions.g:661:1: (this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )* )?
                      int alt10=2;
                      int LA10_0 = input.LA(1);
  
                      if ( ((LA10_0>=RULE_INT && LA10_0<=RULE_ID)) ) {
                          alt10=1;
                      }
                      switch (alt10) {
                          case 1 :
                              // InternalSimpleExpressions.g:662:5: this_Argument_2= ruleArgument (kw= ',' this_Argument_4= ruleArgument )*
                              {
                               
                                      newCompositeNode(grammarAccess.getMethodCallLiteralAccess().getArgumentParserRuleCall_1_1_0()); 
                                  
                              pushFollow(FOLLOW_13);
                              this_Argument_2=ruleArgument();
  
                              state._fsp--;
  
  
                              		current.merge(this_Argument_2);
                                  
                               
                                      afterParserOrEnumRuleCall();
                                  
                              // InternalSimpleExpressions.g:672:1: (kw= ',' this_Argument_4= ruleArgument )*
                              loop9:
                              do {
                                  int alt9=2;
                                  int LA9_0 = input.LA(1);
  
                                  if ( (LA9_0==24) ) {
                                      alt9=1;
                                  }
  
  
                                  switch (alt9) {
                              	case 1 :
                              	    // InternalSimpleExpressions.g:673:2: kw= ',' this_Argument_4= ruleArgument
                              	    {
                              	    kw=(Token)match(input,24,FOLLOW_14); 
  
                              	            current.merge(kw);
                              	            newLeafNode(kw, grammarAccess.getMethodCallLiteralAccess().getCommaKeyword_1_1_1_0()); 
                              	        
                              	     
                              	            newCompositeNode(grammarAccess.getMethodCallLiteralAccess().getArgumentParserRuleCall_1_1_1_1()); 
                              	        
                              	    pushFollow(FOLLOW_13);
                              	    this_Argument_4=ruleArgument();
  
                              	    state._fsp--;
  
  
                              	    		current.merge(this_Argument_4);
                              	        
                              	     
                              	            afterParserOrEnumRuleCall();
                              	        
  
                              	    }
                              	    break;
  
                              	default :
                              	    break loop9;
                                  }
                              } while (true);
  
  
                              }
                              break;
  
                      }
  
                      kw=(Token)match(input,14,FOLLOW_15); 
  
                              current.merge(kw);
                              newLeafNode(kw, grammarAccess.getMethodCallLiteralAccess().getRightParenthesisKeyword_1_2()); 
                          
                      // InternalSimpleExpressions.g:695:1: (kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral )?
                      int alt11=2;
                      int LA11_0 = input.LA(1);
  
                      if ( (LA11_0==25) ) {
                          alt11=1;
                      }
                      switch (alt11) {
                          case 1 :
                              // InternalSimpleExpressions.g:696:2: kw= '.' this_MethodCallLiteral_7= ruleMethodCallLiteral
                              {
                              kw=(Token)match(input,25,FOLLOW_16); 
  
                                      current.merge(kw);
                                      newLeafNode(kw, grammarAccess.getMethodCallLiteralAccess().getFullStopKeyword_1_3_0()); 
                                  
                               
                                      newCompositeNode(grammarAccess.getMethodCallLiteralAccess().getMethodCallLiteralParserRuleCall_1_3_1()); 
                                  
                              pushFollow(FOLLOW_2);
                              this_MethodCallLiteral_7=ruleMethodCallLiteral();
  
                              state._fsp--;
  
  
                              		current.merge(this_MethodCallLiteral_7);
                                  
                               
                                      afterParserOrEnumRuleCall();
                                  
  
                              }
                              break;
  
                      }
  
  
                      }
                      break;
  
              }
  
  
              }
  
  
              }
  
               leaveRule(); 
          }
           
              catch (RecognitionException re) { 
                  recover(input,re); 
                  appendSkippedTokens();
              } 
          finally {
          }
          return current;
      }