code: private boolean maybeParseImpliedThisMethod( int iOffset, int iLineNum, int iColumn, LazyLightweightParserState state, String strFunction, int markBeforeTypeArgs, int iLocBeforeTypeArgs )
    {
      if( getTokenizerInstructor() != null || getScriptPart() != null && TemplateGenerator.GS_TEMPLATE_PARSED.equals( getScriptPart().getId() ) )
      {
        // templates can only access static members from its optional super class
        return false;
      }
  
      ISymbol thisSym = getSymbolTable().getThisSymbolFromStackOrMap();
      if( thisSym == null || getPropertyNameFromMethodNameIncludingSetter( strFunction ) == null )
      {
        return false;
      }
  
      backtrack( markBeforeTypeArgs, iLocBeforeTypeArgs );
  
      // Make a synthetic 'this' qualifier
      Identifier root = new Identifier();
      root.setSymbol( thisSym, getSymbolTable() );
      root.setSynthetic( true );
      root.setType( thisSym.getType() );
      pushExpression( root );
      setLocation( getTokenizer().getTokenStart(), iLineNum, iColumn, true, true );
      popExpression();
  
      // Try to parse 'Xxx()' as implicitly qualified 'this.Xxx()'
      parseMemberAccess( root, MemberAccessKind.NORMAL, iOffset, strFunction, state, false );
      return true;
    }
docs: e.g., void setFoo( String value ) {} and void setFoo( Integer value ) {} are defined in the super class.