iSeries Remote Systems
v6.0.0

com.ibm.etools.iseries.editor
Class ISeriesEditorRPGILEParser

java.lang.Object
  extended bycom.ibm.lpex.core.LpexCommonParser
      extended bycom.ibm.etools.iseries.editor.ISeriesEditorParser
          extended bycom.ibm.etools.iseries.editor.ISeriesEditorRPGILEParser
All Implemented Interfaces:
EventListener, FocusListener, IISeriesEditorConstants, IISeriesEditorConstantsColors, IISeriesEditorConstantsRPG, IISeriesEditorConstantsRPGILE, IISeriesEditorParser, com.ibm.etools.systems.editor.ISystemTextEditorAdapterContributor, com.ibm.etools.systems.editor.ISystemTextEditorContextContributor, com.ibm.etools.systems.editor.ISystemTextEditorDebugContributor, com.ibm.etools.systems.editor.ISystemTextEditorHelpContributor, com.ibm.etools.systems.editor.ISystemTextEditorParser, com.ibm.etools.systems.editor.ISystemTextEditorSourceViewerConfigurationContributor, com.ibm.lpex.core.LpexConstants, com.ibm.lpex.core.LpexCursorListener, com.ibm.lpex.core.LpexDocumentListener, com.ibm.lpex.core.LpexParser, SWTEventListener

public class ISeriesEditorRPGILEParser
extends ISeriesEditorParser
implements IISeriesEditorConstantsRPGILE, com.ibm.lpex.core.LpexDocumentListener

Port of evrilda.c


Nested Class Summary
 
Nested classes inherited from class com.ibm.etools.iseries.editor.ISeriesEditorParser
ISeriesEditorParser.RunnableParseAll
 
Field Summary
protected  boolean _bInCF
           
protected static ResourceBundle _bundle
           
protected  ISeriesEditorRPGILESourceViewerConfiguration _configuration
           
protected  ISeriesEditorRPGILEFreeFormConverter _freeFormConverter
           
protected  com.ibm.etools.systems.editor.SystemTextEditorHelpHandler _helpHandler
           
protected  com.ibm.etools.systems.editor.SystemTextEditorHelpHandler _helpMessageHandler
           
protected  long _lClassComment
           
protected  long _lClassControl
           
protected  long _lClassMask
           
protected  long _lClassProcedure
           
protected  long _lClassSpace
           
protected  long _lClassSql
           
protected  long _lClassSubroutine
           
protected  ISeriesEditorRPGILEModel _model
           
protected  ISeriesEditorRPGILEPrefixProcessor _prefixer
           
protected  ISeriesEditorRPGILEProgramVerifier _programVerifier
           
protected  ISeriesEditorRPGILEPrompter _prompter
           
protected  ISeriesEditorRPGILEFormatLine _ruler
           
protected  ISeriesEditorRPGILESyntaxChecker _syntaxChecker
           
protected  ISeriesEditorRPGILETokenizer _tokenizer
           
static String copyright
           
 
Fields inherited from class com.ibm.etools.iseries.editor.ISeriesEditorParser
_action, _bDataElementChanged, _bDebugMode, _bIgnoreDatePreference, _bIgnoreParseExtras, _bIsPrimaryLpexView, _bLocal, _bParseAll, _bParsing, _compileEditManager, _compileErrorMarkerListener, _compileMarker, _compileMarkerList, _compileMessageLevel, _editor, _helpResourceBundle, _iCCSID, _iDataLine, _iFile, _labelProvider, _member, _menuCompile, _menuLanguageHelp, _menuSource, _outlinePage, _strImagePath, _strLocalFileName, _strSpecialChars, _view
 
Fields inherited from class com.ibm.lpex.core.LpexCommonParser
ATTRIBUTES_COMMENT, ATTRIBUTES_COMMENT_KEYWORD, ATTRIBUTES_COMMENT1, ATTRIBUTES_DEFAULT, ATTRIBUTES_DIRECTIVE, ATTRIBUTES_ERROR, ATTRIBUTES_KEYWORD, ATTRIBUTES_KEYWORD1, ATTRIBUTES_LIBRARY, ATTRIBUTES_NONSOURCE, ATTRIBUTES_NUMERAL, ATTRIBUTES_STRING, ATTRIBUTES_STRING1, BACKGROUND_COLOR, CLASS_MESSAGE, LANGUAGE_CCPP, LANGUAGE_CICS, LANGUAGE_CL, LANGUAGE_COBOL, LANGUAGE_DDS, LANGUAGE_DLI, LANGUAGE_FORTRAN, LANGUAGE_HLASM, LANGUAGE_HTML, LANGUAGE_JAVA, LANGUAGE_JCL, LANGUAGE_LISP, LANGUAGE_PERL, LANGUAGE_PLI, LANGUAGE_REXX, LANGUAGE_RPG, LANGUAGE_SABRETALK, LANGUAGE_SQL, LANGUAGE_XMI, LANGUAGE_XML, LANGUAGE_XSL, LEXER_RC_END, LEXER_RC_EOF, LEXER_RC_MORE, LEXER_RC_OK, POPUP_END, POPUP_FILTERVIEW, POPUP_SOURCE, POPUP_TOP, PROTOKEY_EMPTY, STYLE_MESSAGE, STYLE_NAME, view
 
Fields inherited from interface com.ibm.etools.iseries.editor.IISeriesEditorConstantsRPGILE
_straControlWords, _straDataWords, _straMacroWords, _straRPGFonts, _straXF2_opcodes, _straXF2_possible_opcodes, CLASS_COMMENT, CLASS_CONTROL, CLASS_PROCEDURE, CLASS_SPACE, CLASS_SQL, CLASS_SUBROUTINE, CLEVEL_LEN, CLEVEL_POS, COMMENT_POS, CONDIND_LEN, CONDIND_POS, CONTINUATION_INDENT, DECPOS_LEN, DECPOS_POS, DIRECTIVE_POS, EOLCOMMENT_POS, EXTFACTOR2_LEN, EXTFACTOR2_POS, FACTOR1_LEN, FACTOR1_POS, FACTOR2_LEN, FACTOR2_POS, FIELDDEF_LEN, FIELDDEF_POS, FIELDLEN_LEN, FIELDLEN_POS, FONT_COMMENT, FONT_DEFAULT, FREE_LEN, FREE_POS, IND_LEN, INDENT_LIMIT, LENGTH_C_OPCODE, MAX_NEST, NUM_OF_OPCODES, OPCODE_LEN, OPCODE_POS, PAGE_INDEX_ILE_C_Calculation, PAGE_INDEX_ILE_C_Calculation_Extended_Factor_2, PAGE_INDEX_ILE_C_Calculation_Extended_Factor_2_Continuation, PAGE_INDEX_ILE_C_Calculation_Free_Form, PAGE_INDEX_ILE_Comment, PAGE_INDEX_ILE_D_Definition, PAGE_INDEX_ILE_D_Definition_Continuation, PAGE_INDEX_ILE_D_Definition_Continued_Name_Line, PAGE_INDEX_ILE_F_File_Description, PAGE_INDEX_ILE_F_File_Description_Continuation, PAGE_INDEX_ILE_Full_Line, PAGE_INDEX_ILE_H_Control, PAGE_INDEX_ILE_I_Input_Field_Description, PAGE_INDEX_ILE_I_Input_Field_Description_Externally_Described_File, PAGE_INDEX_ILE_I_Input_Record_Identification, PAGE_INDEX_ILE_I_Input_Record_Identification_Externally_Described_File, PAGE_INDEX_ILE_I_Input_Record_Identification_Logical_Relationship, PAGE_INDEX_ILE_O_Output_Field_Description, PAGE_INDEX_ILE_O_Output_Field_Description_Continuation, PAGE_INDEX_ILE_O_Output_Record_Identification, PAGE_INDEX_ILE_O_Output_Record_Identification_AND_OR, PAGE_INDEX_ILE_O_Output_to_Disk, PAGE_INDEX_ILE_P_Procedure, PAGE_INDEX_ILE_P_Procedure_Continued_Name_Line, PREF_COLUMN_CFIXED_MAX, PREF_COLUMN_CFREE_MAX, PREF_COLUMN_CFREE_MIN, PREF_COLUMN_CFREE_START, PROMPT_C, PROMPT_CF, PROMPT_CFE, PROMPT_CFS, PROMPT_CM, PROMPT_D, PROMPT_DATA, PROMPT_DC, PROMPT_DX, PROMPT_F, PROMPT_FC, PROMPT_H, PROMPT_IF, PROMPT_IFX, PROMPT_IR, PROMPT_IR2, PROMPT_IRX, PROMPT_LAST, PROMPT_MACRO, PROMPT_NONE, PROMPT_OD, PROMPT_OF, PROMPT_OFC, PROMPT_OR, PROMPT_OR2, PROMPT_P, PROMPT_PC, PROMPT_SPACE, PROMPT_SQL, PROMPT_XF2, PROMPT_XF2C, RESINDEQ_POS, RESINDER_POS, RESINDNR_POS, RESINDS_LEN, RESINDS_POS, RESULTFIELD_LEN, RESULTFIELD_POS, RPGSPEC_C, RPGSPEC_CF, RPGSPEC_D, RPGSPEC_E, RPGSPEC_F, RPGSPEC_H, RPGSPEC_I, RPGSPEC_L, RPGSPEC_O, RPGSPEC_P, RPGSPEC_U, SIGNIFICANT_LEN, SLASHSLASHEOL_POS, SPECTYPE_POS, SRCRECLEN, STRING_HELP_DOC_PLUGIN_ID, STRING_HELP_TABLE_FILENAME, STRING_HELP_TABLE_PLUGIN_ID, STRING_MESSAGE_HELP_DOC_PLUGIN_ID, STRING_MESSAGE_HELP_TABLE_FILENAME, STRING_MESSAGE_HELP_TABLE_PLUGIN_ID, XACQ, XADD, XADDDUR, XALLOC, XANDEQ, XANDGE, XANDGT, XANDLE, XANDLT, XANDNE, XBEGSR, XBITOFF, XBITON, XBLANK, XCAB, XCABEQ, XCABGE, XCABGT, XCABLE, XCABLT, XCABNE, XCALL, XCALLB, XCALLP, XCAS, XCASEQ, XCASGE, XCASGT, XCASLE, XCASLT, XCASNE, XCAT, XCHAIN, XCHECK, XCHECKR, XCLEAR, XCLOSE, XCOMMIT, XCOMP, XDEALLOC, XDEFINE, XDELETE, XDIV, XDO, XDOU, XDOUEQ, XDOUGE, XDOUGT, XDOULE, XDOULT, XDOUNE, XDOW, XDOWEQ, XDOWGE, XDOWGT, XDOWLE, XDOWLT, XDOWNE, XDSPLY, XDUMP, XELSE, XELSEIF, XEND, XENDCS, XENDDO, XENDFOR, XENDIF, XENDMON, XENDSL, XENDSR, XEVAL, XEVALR, XEXCEPT, XEXFMT, XEXSR, XEXTRCT, XFEOD, XFOR, XFORCE, XGOTO, XIF, XIFEQ, XIFGE, XIFGT, XIFLE, XIFLT, XIFNE, XIN, XITER, XKFLD, XKLIST, XLEAVE, XLEAVESR, XLOOKUP, XMHHZO, XMHLZO, XMLHZO, XMLLZO, XMONITOR, XMOVE, XMOVEA, XMOVEL, XMULT, XMVR, XNEXT, XOCCUR, XON_ERROR, XOPEN, XOREQ, XORGE, XORGT, XORLE, XORLT, XORNE, XOTHER, XOUT, XPARM, XPLIST, XPOST, XREAD, XREADC, XREADE, XREADP, XREADPE, XREALLOC, XREL, XRESET, XRETURN, XROLBK, XSCAN, XSELECT, XSETGT, XSETLL, XSETOFF, XSETON, XSHTDN, XSORTA, XSQRT, XSUB, XSUBDUR, XSUBST, XTAG, XTEST, XTESTB, XTESTN, XTESTZ, XTIME, XUNLOCK, XUPDATE, XWHEN, XWHENEQ, XWHENGE, XWHENGT, XWHENLE, XWHENLT, XWHENNE, XWRITE, XXFOOT, XXLATE, XZ_ADD, XZ_SUB
 
Fields inherited from interface com.ibm.etools.iseries.editor.IISeriesEditorConstantsRPG
_straSQLWords, CMD_SETFIELDS, CMD_SETFIELDSBLANK, CMD_SETFORMATLINETEXT, CMD_SETTABS, COLUMN_C_FREE, COLUMN_C_OPCODE, COLUMN_COMMENT, COLUMN_FACTOR1, COLUMN_FACTOR2, COLUMN_KEYWORDS, COLUMN_PROC_NAME_BEGIN, COLUMN_PROC_NAME_END, COLUMN_PROC_SPEC, COLUMN_SPEC, FIELD_FACTOR1, FIELD_FACTOR2, FIELD_FROM, FIELD_OPCODE, FIELD_TOLENGTH, OPM_COLUMN_FACTOR1
 
Fields inherited from interface com.ibm.etools.iseries.editor.IISeriesEditorConstantsColors
COLOR_BLACK_WHITE, COLOR_BLUE_WHITE, COLOR_BRIGHTBLUE_WHITE, COLOR_BRIGHTGREEN_WHITE, COLOR_BRIGHTGREY_WHITE, COLOR_BRIGHTPINK_WHITE, COLOR_BRIGHTRED_WHITE, COLOR_BROWN_WHITE, COLOR_CYAN_WHITE, COLOR_ERROR_HIGHLIGHT, COLOR_GREEN_WHITE, COLOR_GREY_WHITE, COLOR_HIGHLIGHT, COLOR_MAGENTA_WHITE, COLOR_PINK_WHITE, COLOR_RED_WHITE, COLOR_WHITE_BRIGHTRED
 
Fields inherited from interface com.ibm.lpex.core.LpexDocumentListener
ELEMENT_INSERTED, ELEMENT_REMOVED, ELEMENT_REPLACED, END_CHANGES, START_CHANGES, TEXT_INSERTED, TEXT_REMOVED, TEXT_REPLACED
 
Fields inherited from interface com.ibm.etools.iseries.editor.IISeriesEditorParser
Copyright
 
Fields inherited from interface com.ibm.etools.systems.editor.ISystemTextEditorAdapterContributor
Copyright
 
Fields inherited from interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor
Copyright
 
Fields inherited from interface com.ibm.etools.systems.editor.ISystemTextEditorDebugContributor
Copyright
 
Fields inherited from interface com.ibm.etools.systems.editor.ISystemTextEditorHelpContributor
Copyright
 
Fields inherited from interface com.ibm.etools.systems.editor.ISystemTextEditorSourceViewerConfigurationContributor
Copyright
 
Fields inherited from interface com.ibm.etools.iseries.editor.IISeriesEditorConstants
ACTION_COMPILE_ID, ACTION_VERIFYPROGRAM_ID, FILE_TYPE_CL, FILE_TYPE_DDS, FILE_TYPE_OTHER, FILE_TYPE_RPGILE, FILE_TYPE_RPGOPM, PREF_AUTO_FORMAT, PREF_AUTO_FORMAT_T, PREF_AUTO_UPPER, PREF_AUTO_UPPER_T, PREF_BASE_PREFIX, PREF_BLANK, PREF_BLANK_SUFFIX, PREF_BLANK_T, PREF_COLSEDIT_T, PREF_COMMAND_POS, PREF_COMMAND_POS_T, PREF_DATE, PREF_DATE_T, PREF_HIGHLIGHT, PREF_HIGHLIGHT_BACKGROUND, PREF_HIGHLIGHT_BACKGROUND_T, PREF_HIGHLIGHT_T, PREF_INDENT, PREF_INDENT_T, PREF_INDENTATION, PREF_INDENTATION_T, PREF_LABEL_ABOVE_CMD, PREF_LABEL_ABOVE_CMD_T, PREF_LABEL_POS, PREF_LABEL_POS_T, PREF_ONE_PARM_PER_LINE, PREF_ONE_PARM_PER_LINE_T, PREF_RESEQ_INCR, PREF_RESEQ_INCR_T, PREF_RESEQ_SAVE, PREF_RESEQ_SAVE_T, PREF_RESEQ_START, PREF_RESEQ_START_T, PREF_SIGNATURE_T, PREF_SQL_SYNTAX_CHECK, PREF_SQL_SYNTAX_CHECK_T, PREF_SYNTAX_CHECK, PREF_SYNTAX_CHECK_T, PREF_TAB, PREF_TAB_GENERAL, PREF_TAB_GENERAL_T, PREF_TAB_T, PREF_TOOLTIP_SUFFIX
 
Fields inherited from interface com.ibm.lpex.core.LpexConstants
HELP_COMMAND_MAP, LPEX_VERSION, MSG_POPUP_ERRORS, MSG_POPUP_EXCLUDESELECTION, MSG_POPUP_FILTERVIEWMENU, MSG_POPUP_INSERTMENU, MSG_POPUP_SELECTEDMENU, MSG_POPUP_SHOWALL, MSG_POPUP_SOURCEMENU, PARSE_PENDING_CHANGE_MASK, PARSE_PENDING_INSERT_MASK, PARSE_PENDING_NEXT_DELETED_MASK, PARSE_PENDING_NEXT_SHOW_DELETED_MASK, PARSE_PENDING_PREV_DELETED_MASK, PARSE_PENDING_PREV_SHOW_DELETED_MASK, PLATFORM_AWT, PLATFORM_SWT, PLATFORM_SWT_KEY, STATUS_FILE_ERRORREADING, STATUS_FILE_INCORRECTENCODING, STATUS_FILE_NOTFOUND, STATUS_FINDTEXT_INVALIDPATTERN, STATUS_FINDTEXT_NOTFOUND, STATUS_FINDTEXT_ONLYOCCURRENCE, STATUS_FINDTEXT_READONLY, STATUS_FINDTEXT_WRAPPED, STATUS_LOCATE_NOSEQUENCETEXT, STATUS_LOCATE_NOTFOUND, STATUS_LOCATE_WRAPPED, STATUS_SAVE_CANCELLED, STATUS_SAVE_FAILED, STATUS_TEXTLIMIT_ENFORCED
 
Constructor Summary
ISeriesEditorRPGILEParser(com.ibm.lpex.core.LpexView view)
          Constructor
 
Method Summary
 void blockMarkWord()
          Marks blocks of text for C-Free specifications.
 void cleanupToolBar(ITextEditor editor, IToolBarManager toolBarManager)
          removes the next and previous error toolbar buttons
protected  void contributeMenuItems(IMenuManager menuRoot, boolean bPopupMenu)
          Adds common menu items to the top of the root menu.
 void contributeToMenu(ITextEditor editor, IMenuManager menuRoot)
          Contributes menu bar items.
 void contributeToPopupMenu(ITextEditor editor, IMenuManager menuRoot)
          Contributes popup menu bar items.
 void contributeToToolBar(ITextEditor editor, IToolBarManager toolBarManager)
          Contributes tool bar items.
protected  void createActions(ITextEditor editor)
          Creates menubar and toolbar actions.
protected  int determineElement(int iElement)
          Sets the line class bits, and returns the opcode type.
protected  int determineLine(int iLine)
          Deprecated.  
 void documentChanged(com.ibm.lpex.core.LpexView lpexView, int type, int line, int position, int len)
          Used by the parser to determine the element where the compile data is
 void finishedSaving(ITextEditor editor)
          Method finishedSaving Does nothing for the ILE RPG Parser
 void focusGained(FocusEvent event)
          when focus is gained, reset the tabs
 String getCommentStyleCharacters()
          Returns the style characters used for styling comments ("cs").
 int getElementSpecType(int iElement)
          Returns the spec type of an element Port of evfrilda.c, SpecTypeOfLine.
 ISeriesFile getFieldFile()
          Method getFieldFile.
 IISeriesEditorFormatLine getFormatLine()
          Returns the format line ruler.
 ISeriesEditorRPGILEFreeFormConverter getFreeFormConverter()
          Returns the Conversion tool.
 com.ibm.etools.systems.editor.SystemTextEditorHelpHandler getHelpHandler()
          Returns the help handler for this parser.
 ISeriesMember getIncludeMember()
          Subclasses should override if implementing the action ActionOpenInclude
 String getLanguage()
          Declared in ISystemEditorParser
protected  long getLineClassTypes(String strLine, int iSpecType)
          Port of evfrilda.c, ClassOfLine.
protected  int getLineSpecType(int iLine)
          Deprecated. see getElementSpecType
protected  int getLineSpecTypeC(String strLine)
           
protected  int getLineSpecTypeD(String strLine)
           
protected  int getLineSpecTypeF(String strLine)
           
protected  int getLineSpecTypeH(String strLine)
           
protected  int getLineSpecTypeI(String strLine)
           
protected  int getLineSpecTypeO(String strLine)
           
protected  int getLineSpecTypeP(String strLine)
           
 LanguageModel getModel(boolean bUpdate)
          Returns the element tree model for the outline view.
protected  int getNextFreeFormBoundaryElement(int iElement)
          Finds the start or end free form boundary beginning with the line after the given line.
protected  int getNextFreeFormBoundaryLine(int iLine)
          Deprecated. see getNextFreeFormBoundaryElement
 String getPopupItems(int popupLocation)
          56708 Return the popup menu items
 ResourceBundle getProfile()
           
 IISeriesEditorProgramVerifier getProgramVerifier()
          Returns the program verifier.
 IISeriesEditorPromptAdapter getPromptAdapter()
          Method declared on ISeriesEditorParser.
 String getPromptFormatLine(int iSpecType)
          Returns the format string of the spec type.
 com.ibm.lpex.alef.LpexSourceViewerConfiguration getSourceViewerConfiguration()
          Returns the source viewer configuration.
 IISeriesEditorSyntaxChecker getSyntaxChecker()
          Returns the syntax checker.
 void initializeColors(com.ibm.lpex.core.LpexView view)
          Initializes the display colors.
 void initializeElementClassTypes()
          Registers the element class types with Lpex
 void initializeLpexView(com.ibm.lpex.core.LpexView lpexView)
          Declared in IISeriesEditorParser Update lpex profile with tabbing support.
 boolean isLineDebuggable(int iLine)
          Returns true to let the super class know that this parser supports debugging.
 boolean isTokenDelimiter(char c)
          Query whether the specified character is a token delimiter.
 boolean isValidFieldAction()
          Method isValidFieldAction.
 boolean isValidIncludeAction()
          Method isValidIncludeAction.
protected  com.ibm.lpex.core.LpexDocumentLocation matchToken(com.ibm.lpex.core.LpexDocumentLocation loc)
          Match tokens Matches the token that the location specifies.
 void parseElements(int iElementFirst, int iElementLast, int iElementCurrent)
          Parse range of elements This just calls parseLine(i) for each element, subclasses can handle it differently if they want (e.g.
 void parseLine(int iElement)
          Port of evfripp.c, LineParse This really parses an element and not a line......
protected  void parseRegion(int iElementFirst, int iElementLast, IProgressMonitor progressMonitor)
          Parses a contiguous set of Elements given the first and last Element numbers.
 void promptRequest()
          Called when the shift-F4 key was just pressed, before the focus is given to the prompter.
 void terminateParser()
          When parsing is disabled, turn off document listeners
 
Methods inherited from class com.ibm.etools.iseries.editor.ISeriesEditorParser
addError, cleanupMenu, cleanupPopupMenu, clearCompileInfo, copyCompileMessages, createOutlineView, doLpexAction, doPromptAction, elementChanged, focusLost, getAdapter, getAS400, getAutoUppercase, getEditor, getIFile, getImage, getISeriesConnection, getISeriesMember, getLocalFileName, getLpexLanguageHelpHandler, getLshToken, getProperty, getPropertySheet, getSpecialChars, getTextLimit, hasSequenceNumbers, isDebugMode, isElementAboveDataRegion, isLineAboveDataRegion, isLocal, isOverrideDatePreference, isReadOnly, parseAll, parseElement, prompt, removeErrors, removeErrors, saving, selectionLinesChanged, selectionLinesChanged, selectionLinesChanged, setAS400, setCompileErrorInfo, setConnectionListener, setDebugMode, setEditor, setEnableParseExtras, setLocal, setOverrideDatePreference, updateProfileForActions, updateProfileForTabbing, upperCase
 
Methods inherited from class com.ibm.lpex.core.LpexCommonParser
addDocumentMessage, addMessage, addMessage, addMessage, copyDocumentMessages, cursorIndent, defineFilterAction, expandProtoKeyword, getInstallStyleAttributes, getLanguage, getPopupParserItems, getPopupViewItems, getStyleName, getStyles, getTextIndent, getToken, getTokenLocation, indentText, indentText, indentText, isDebuggable, lineComment, lpexView, newLine, openLine, parse, propertySet, removeDocumentMessages, removeMessages, removeMessages, resetParser, setProperty, setStyle, splitLine, styleString, tokenBegin, tokenEnd, totalParse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

copyright

public static final String copyright
See Also:
Constant Field Values

_bundle

protected static ResourceBundle _bundle

_tokenizer

protected ISeriesEditorRPGILETokenizer _tokenizer

_ruler

protected ISeriesEditorRPGILEFormatLine _ruler

_prefixer

protected ISeriesEditorRPGILEPrefixProcessor _prefixer

_programVerifier

protected ISeriesEditorRPGILEProgramVerifier _programVerifier

_prompter

protected ISeriesEditorRPGILEPrompter _prompter

_configuration

protected ISeriesEditorRPGILESourceViewerConfiguration _configuration

_syntaxChecker

protected ISeriesEditorRPGILESyntaxChecker _syntaxChecker

_freeFormConverter

protected ISeriesEditorRPGILEFreeFormConverter _freeFormConverter

_helpHandler

protected com.ibm.etools.systems.editor.SystemTextEditorHelpHandler _helpHandler

_helpMessageHandler

protected com.ibm.etools.systems.editor.SystemTextEditorHelpHandler _helpMessageHandler

_bInCF

protected boolean _bInCF

_model

protected ISeriesEditorRPGILEModel _model

_lClassComment

protected long _lClassComment

_lClassControl

protected long _lClassControl

_lClassMask

protected long _lClassMask

_lClassProcedure

protected long _lClassProcedure

_lClassSpace

protected long _lClassSpace

_lClassSql

protected long _lClassSql

_lClassSubroutine

protected long _lClassSubroutine
Constructor Detail

ISeriesEditorRPGILEParser

public ISeriesEditorRPGILEParser(com.ibm.lpex.core.LpexView view)
Constructor

Method Detail

blockMarkWord

public void blockMarkWord()
Marks blocks of text for C-Free specifications. If not a C-Free, the super class' method is called. Some of this code is taken from LpexCommonParser.blockMarkWord().


isTokenDelimiter

public boolean isTokenDelimiter(char c)
Query whether the specified character is a token delimiter. Used for blockMarkWord

Parameters:
c -
Returns:
Since:
6.0 58357 - for debugger team

contributeMenuItems

protected void contributeMenuItems(IMenuManager menuRoot,
                                   boolean bPopupMenu)
Adds common menu items to the top of the root menu.


contributeToMenu

public void contributeToMenu(ITextEditor editor,
                             IMenuManager menuRoot)
Contributes menu bar items.

Specified by:
contributeToMenu in interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor
Overrides:
contributeToMenu in class ISeriesEditorParser

contributeToPopupMenu

public void contributeToPopupMenu(ITextEditor editor,
                                  IMenuManager menuRoot)
Contributes popup menu bar items.

Specified by:
contributeToPopupMenu in interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor

contributeToToolBar

public void contributeToToolBar(ITextEditor editor,
                                IToolBarManager toolBarManager)
Contributes tool bar items.

Specified by:
contributeToToolBar in interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor
Overrides:
contributeToToolBar in class ISeriesEditorParser

cleanupToolBar

public void cleanupToolBar(ITextEditor editor,
                           IToolBarManager toolBarManager)
Description copied from class: ISeriesEditorParser
removes the next and previous error toolbar buttons

subclasses which add other toolbar buttons should subclass and call super

Specified by:
cleanupToolBar in interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor
Overrides:
cleanupToolBar in class ISeriesEditorParser
See Also:
ISystemTextEditorContextContributor.cleanupToolBar(ITextEditor, IToolBarManager)

createActions

protected void createActions(ITextEditor editor)
Creates menubar and toolbar actions.


documentChanged

public void documentChanged(com.ibm.lpex.core.LpexView lpexView,
                            int type,
                            int line,
                            int position,
                            int len)
Used by the parser to determine the element where the compile data is

Specified by:
documentChanged in interface com.ibm.lpex.core.LpexDocumentListener
See Also:
LpexDocumentListener.documentChanged(LpexView, int, int, int, int)

determineLine

protected int determineLine(int iLine)
Deprecated.  

Sets the line class bits, and returns the opcode type. Port of evfrilda.c, DetermineLine


determineElement

protected int determineElement(int iElement)
Sets the line class bits, and returns the opcode type. Port of evfrilda.c, DetermineLine


finishedSaving

public void finishedSaving(ITextEditor editor)
Method finishedSaving Does nothing for the ILE RPG Parser

Specified by:
finishedSaving in interface com.ibm.etools.systems.editor.ISystemTextEditorContextContributor
See Also:
ISystemTextEditorContextContributor.finishedSaving(ITextEditor)

focusGained

public void focusGained(FocusEvent event)
when focus is gained, reset the tabs

Specified by:
focusGained in interface FocusListener
Overrides:
focusGained in class ISeriesEditorParser
See Also:
FocusListener.focusGained(FocusEvent)

getCommentStyleCharacters

public String getCommentStyleCharacters()
Returns the style characters used for styling comments ("cs"). This is used by compare sessions when the compare.ignoreComments option is in effect.


getFieldFile

public ISeriesFile getFieldFile()
Method getFieldFile. returns an ISeriesFile object if the cursor is on a line with an F spec, null otherwise.

Specified by:
getFieldFile in interface IISeriesEditorParser
Overrides:
getFieldFile in class ISeriesEditorParser
Returns:
an object that the action can run against
See Also:
IISeriesEditorParser.getFieldFile()

getFormatLine

public IISeriesEditorFormatLine getFormatLine()
Returns the format line ruler.

Specified by:
getFormatLine in interface IISeriesEditorParser
Overrides:
getFormatLine in class ISeriesEditorParser

getHelpHandler

public com.ibm.etools.systems.editor.SystemTextEditorHelpHandler getHelpHandler()
Returns the help handler for this parser.

Specified by:
getHelpHandler in interface IISeriesEditorParser

getIncludeMember

public ISeriesMember getIncludeMember()
Description copied from class: ISeriesEditorParser
Subclasses should override if implementing the action ActionOpenInclude

Specified by:
getIncludeMember in interface IISeriesEditorParser
Overrides:
getIncludeMember in class ISeriesEditorParser
See Also:
IISeriesEditorParser.getIncludeMember()

getLanguage

public String getLanguage()
Declared in ISystemEditorParser

Specified by:
getLanguage in interface com.ibm.etools.systems.editor.ISystemTextEditorParser
Specified by:
getLanguage in class ISeriesEditorParser

getLineClassTypes

protected long getLineClassTypes(String strLine,
                                 int iSpecType)
Port of evfrilda.c, ClassOfLine.


getLineSpecType

protected int getLineSpecType(int iLine)
Deprecated. see getElementSpecType

Returns the spec type of a line. Port of evfrilda.c, SpecTypeOfLine. Macros /free and /end-free are now returned as CFS and CFE rather than as MACRO.


getElementSpecType

public int getElementSpecType(int iElement)
Returns the spec type of an element Port of evfrilda.c, SpecTypeOfLine. Macros /free and /end-free are now returned as CFS and CFE rather than as MACRO.


getLineSpecTypeC

protected int getLineSpecTypeC(String strLine)

getLineSpecTypeD

protected int getLineSpecTypeD(String strLine)

getLineSpecTypeF

protected int getLineSpecTypeF(String strLine)

getLineSpecTypeH

protected int getLineSpecTypeH(String strLine)

getLineSpecTypeI

protected int getLineSpecTypeI(String strLine)

getLineSpecTypeO

protected int getLineSpecTypeO(String strLine)

getLineSpecTypeP

protected int getLineSpecTypeP(String strLine)

getModel

public LanguageModel getModel(boolean bUpdate)
Returns the element tree model for the outline view.

Specified by:
getModel in interface IISeriesEditorParser
Overrides:
getModel in class ISeriesEditorParser

getNextFreeFormBoundaryLine

protected int getNextFreeFormBoundaryLine(int iLine)
Deprecated. see getNextFreeFormBoundaryElement

Finds the start or end free form boundary beginning with the line after the given line. A data area is recognized as a boundary. Port of evfripp.c, findNextCFBound


getNextFreeFormBoundaryElement

protected int getNextFreeFormBoundaryElement(int iElement)
Finds the start or end free form boundary beginning with the line after the given line. A data area is recognized as a boundary. Port of evfripp.c, findNextCFBound


getPopupItems

public String getPopupItems(int popupLocation)
56708 Return the popup menu items

Overrides:
getPopupItems in class ISeriesEditorParser
See Also:
LpexCommonParser.getPopupItems(int)

getProfile

public ResourceBundle getProfile()

getProgramVerifier

public IISeriesEditorProgramVerifier getProgramVerifier()
Returns the program verifier.

Specified by:
getProgramVerifier in interface IISeriesEditorParser
Overrides:
getProgramVerifier in class ISeriesEditorParser

getPromptAdapter

public IISeriesEditorPromptAdapter getPromptAdapter()
Method declared on ISeriesEditorParser. Returns an adapter used to communicate between the editor and a prompt view.

Specified by:
getPromptAdapter in interface IISeriesEditorParser
Specified by:
getPromptAdapter in class ISeriesEditorParser

getPromptFormatLine

public String getPromptFormatLine(int iSpecType)
Returns the format string of the spec type.


getSourceViewerConfiguration

public com.ibm.lpex.alef.LpexSourceViewerConfiguration getSourceViewerConfiguration()
Returns the source viewer configuration. Default implementation returns null.

Specified by:
getSourceViewerConfiguration in interface com.ibm.etools.systems.editor.ISystemTextEditorSourceViewerConfigurationContributor
Overrides:
getSourceViewerConfiguration in class ISeriesEditorParser

getSyntaxChecker

public IISeriesEditorSyntaxChecker getSyntaxChecker()
Returns the syntax checker.

Specified by:
getSyntaxChecker in interface IISeriesEditorParser
Overrides:
getSyntaxChecker in class ISeriesEditorParser

getFreeFormConverter

public ISeriesEditorRPGILEFreeFormConverter getFreeFormConverter()
Returns the Conversion tool.


initializeElementClassTypes

public void initializeElementClassTypes()
Registers the element class types with Lpex


initializeLpexView

public void initializeLpexView(com.ibm.lpex.core.LpexView lpexView)
Declared in IISeriesEditorParser Update lpex profile with tabbing support.

Specified by:
initializeLpexView in interface IISeriesEditorParser
Overrides:
initializeLpexView in class ISeriesEditorParser

initializeColors

public void initializeColors(com.ibm.lpex.core.LpexView view)
Initializes the display colors.


matchToken

protected com.ibm.lpex.core.LpexDocumentLocation matchToken(com.ibm.lpex.core.LpexDocumentLocation loc)
Match tokens Matches the token that the location specifies.

Parameters:
loc - the location of the token to match
Returns:
the location of the matching token, null if the token is not found
See Also:
LpexCommonParser.matchToken(LpexDocumentLocation)

isValidFieldAction

public boolean isValidFieldAction()
Method isValidFieldAction. checks whther the current line is valid for the show fields action

Specified by:
isValidFieldAction in interface IISeriesEditorParser
Overrides:
isValidFieldAction in class ISeriesEditorParser
Returns:
true if the current line has an f spec with a filename on it, false otherwise
See Also:
IISeriesEditorParser.isValidFieldAction()

isValidIncludeAction

public boolean isValidIncludeAction()
Method isValidIncludeAction. checkw whether the current line is valid for showing /copy members

Specified by:
isValidIncludeAction in interface IISeriesEditorParser
Overrides:
isValidIncludeAction in class ISeriesEditorParser
Returns:
true if the current line is a /COPY line
See Also:
IISeriesEditorParser.isValidIncludeAction()

isLineDebuggable

public boolean isLineDebuggable(int iLine)
Returns true to let the super class know that this parser supports debugging.

Specified by:
isLineDebuggable in interface com.ibm.etools.systems.editor.ISystemTextEditorDebugContributor

parseElements

public void parseElements(int iElementFirst,
                          int iElementLast,
                          int iElementCurrent)
Description copied from class: ISeriesEditorParser
Parse range of elements This just calls parseLine(i) for each element, subclasses can handle it differently if they want (e.g. only calling a syntax checker once for the whole range of lines instead of once per line).

Overrides:
parseElements in class ISeriesEditorParser
See Also:
ISeriesEditorParser.parseElements(int, int, int)

parseLine

public void parseLine(int iElement)
Port of evfripp.c, LineParse This really parses an element and not a line......

Specified by:
parseLine in class ISeriesEditorParser

parseRegion

protected void parseRegion(int iElementFirst,
                           int iElementLast,
                           IProgressMonitor progressMonitor)
Parses a contiguous set of Elements given the first and last Element numbers. Port of evfripp.c PartParse

Specified by:
parseRegion in class ISeriesEditorParser

promptRequest

public void promptRequest()
Called when the shift-F4 key was just pressed, before the focus is given to the prompter. Parse and tokenize the line and notify the prompter. This is done in case the user has changed the line.

Specified by:
promptRequest in class ISeriesEditorParser

terminateParser

public void terminateParser()
When parsing is disabled, turn off document listeners

Overrides:
terminateParser in class ISeriesEditorParser
See Also:
LpexCommonParser.terminateParser()

iSeries Remote Systems
v6.0.0

Copyright © 2005 IBM Corp. All Rights Reserved.

Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.