Package editor
Class GosuDocument
java.lang.Object
javax.swing.text.AbstractDocument
javax.swing.text.PlainDocument
editor.GosuDocument
- All Implemented Interfaces:
Serializable,Document
This is quite primitive in that it simply provides support for lexically
analyzing the Gosu source.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class(package private) classClass to provide Reader functionality from a portion of a Document.classNested classes/interfaces inherited from class javax.swing.text.AbstractDocument
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate char[]private ITokenizerInstructorprivate List<IParseTree>private intprivate ParseResultsException(package private) static final ObjectKey to be used in AttributeSet's holding a value of Token.Fields inherited from class javax.swing.text.PlainDocument
lineLimitAttribute, tabSizeAttributeFields inherited from class javax.swing.text.AbstractDocument
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementNameFields inherited from interface javax.swing.text.Document
StreamDescriptionProperty, TitleProperty -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetParseWarningStartingAt(int iPos) intgetScannerStart(int p) Fetch a reasonable location to start scanning given the desired start location.getStyleCodeAtPosition(int iPosition) Returns a style code for the absolute position in the document or null if no code is mapped.private IntegergetStyleCodeForParsedElement(int iPosition, IParsedElement parsedElem) Given a IParsedElement return a special Style.booleanhasErrorStartingAt(int iPos) protected voidUpdates document structure as a result of text insertion.protected voidUpdates any document structure as a result of text removal.voidsetLocations(List<IParseTree> locations) The parsed Locations for the document.voidsetLocationsOffset(int locationsOffset) voidvoidsetTokenizerInstructor(ITokenizerInstructor tokenizerInstructor) Methods inherited from class javax.swing.text.PlainDocument
createDefaultRoot, getDefaultRootElement, getParagraphElement, insertStringMethods inherited from class javax.swing.text.AbstractDocument
addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock
-
Field Details
-
CommentAttribute
Key to be used in AttributeSet's holding a value of Token. -
_pe
-
_locations
-
_locationsOffset
private int _locationsOffset -
_charArray
private char[] _charArray -
_instructor
-
-
Constructor Details
-
GosuDocument
public GosuDocument()
-
-
Method Details
-
createScanner
- Returns:
- A new lexical analyzer for this document.
-
setParseResultsException
-
getParseResultsException
-
setLocations
The parsed Locations for the document. -
getLocations
-
setLocationsOffset
public void setLocationsOffset(int locationsOffset) -
hasErrorStartingAt
public boolean hasErrorStartingAt(int iPos) -
getParseWarningStartingAt
-
getStyleCodeAtPosition
Returns a style code for the absolute position in the document or null if no code is mapped. -
getStyleCodeForParsedElement
Given a IParsedElement return a special Style. Or return null if no special style exists for the IParsedElement. -
getScannerStart
public int getScannerStart(int p) Fetch a reasonable location to start scanning given the desired start location. This allows for adjustments needed to accomodate multiline comments. -
insertUpdate
Updates document structure as a result of text insertion. This will happen within a write lock. The superclass behavior of updating the line map is executed followed by marking any comment areas that should backtracked before scanning.- Overrides:
insertUpdatein classPlainDocument- Parameters:
chng- the change eventattr- the set of attributes
-
removeUpdate
Updates any document structure as a result of text removal. This will happen within a write lock. The superclass behavior of updating the line map is executed followed by placing a lexical update command on the analyzer queue.- Overrides:
removeUpdatein classPlainDocument- Parameters:
chng- the change event
-
setTokenizerInstructor
-