Classes

GSWAction
GSWActionRequestHandler
GSWActionURL
GSWActiveImage
GSWAdaptor
GSWAjaxRequestHandler
GSWApplet
GSWApplication
GSWArcRegion
GSWAssociation
GSWBaseParser
GSWBindingNameAssociation
GSWBody
GSWBrowser
GSWBundleUnarchiverDelegate
GSWCheckBox
GSWCheckBoxList
GSWCircularRegion
GSWClientSideScript
GSWComponent
GSWComponentContent
GSWComponentDefinition
GSWComponentReference
GSWComponentRequestHandler
GSWConditional
GSWConstantValueAssociation
GSWContext
GSWCookie
GSWDeclaration
GSWDeclarationFormatException
GSWDeclarationParser
GSWDefaultAdaptor
GSWDeployedBundle
GSWDictionary
GSWDirectAction
GSWDirectActionRequestHandler
GSWDynamicElement
GSWDynamicGroup
GSWDynamicURLString
GSWElement
GSWElementID
GSWEllipseRegion
GSWEmbeddedObject
GSWFileUpload
GSWForm
GSWFrame
GSWGenericContainer
GSWGenericElement
GSWGeometricRegion
GSWHTMLBareString
GSWHTMLComment
GSWHTMLDynamicElement
GSWHTMLRawParser
GSWHTMLStaticElement
GSWHTMLStaticGroup
GSWHTMLTemplateParser
GSWHTMLURLValuedElement
GSWHTTPIO
GSWHiddenField
GSWHyperlink
GSWImage
GSWImageButton
GSWImageInfo
GSWInput
GSWInputStreamData
GSWJavaScript
GSWKeyValueAssociation
GSWLifebeatThread
GSWMailDelivery
GSWMessage
GSWNestedList
GSWParam
GSWPasswordField
GSWPngImageInfo
GSWPolygonRegion
GSWPopUpButton
GSWProcFSProcInfo
GSWProjectBundle
GSWRadioButton
GSWRadioButtonList
GSWRecording
GSWRectangularRegion
GSWRepetition
GSWRequest
GSWRequestHandler
GSWResetButton
GSWResourceManager
GSWResourceRequestHandler
GSWResourceURL
GSWResponse
GSWServerSessionStore
GSWSession
GSWSessionStore
GSWSessionTimeOut
GSWSessionTimeOutManager
GSWStaticResourceRequestHandler
GSWStatisticsStore
GSWStats
GSWString
GSWSubmitButton
GSWSwitchComponent
GSWTemplateParser
GSWTemporaryElement
GSWText
GSWTextField
GSWToggle
GSWTransactionRecord
GSWURLValuedElementData
GSWVBScript
GSWValueQualityHeaderPart
NSFooNumberFormatter
NSMutableOrderedArray
WOKeyValueUnarchiver

Protocols

<GSWActionResults>
<GSWDeclarationParserPragmaDelegate>
<GSWTemplateParserDelegate>
<WOKeyValueArchiving>

Constants

GSWDFEArrayParsingError
GSWDFEDictionaryParsingError
GSWDFEElementCreationFailed
GSWDFEEmptyKeyPath
GSWDFEMissingAliasedDeclaration
GSWDFEMissingClassNameForElement
GSWDFEMissingDeclarationForElement
GSWDFEMissingElementName
GSWDFEMissingHexStringDataEnd
GSWDFEMissingIdentifier
GSWDFEMissingPragmaDelegate
GSWDFEMissingQuotedKeyPathEnd
GSWDFEMissingQuotedStringEnd
GSWDFEMissingSeparator
GSWDFEMissingValue
GSWDFEUnexpectedBufferEnd
GSWDFEUnexpectedCharacter
GSWDFEUnknownPragmaDirective
GSWDFEWrongHexNumberFormat
GSWDFEWrongKeyPathFormat
GSWDFEWrongNumberFormat

Functions

ExceptionRaiseFn
ExceptionRaiseFn0
GSWApplicationMain
GSWApplicationSetDebugSetOption
GSWAssignAndRemoveAssociation
GSWContext_appendElementIDComponent
GSWContext_appendZeroElementIDComponent
GSWContext_component
GSWContext_contextAndElementID
GSWContext_deleteAllElementIDComponents
GSWContext_deleteLastElementIDComponent
GSWContext_elementID
GSWContext_incrementLastElementIDComponent
GSWContext_isParentSenderIDSearchOver
GSWContext_isSenderIDSearchOver
GSWContext_senderID
GSWDebugMethodMsg
GSWDynamicElement_evaluateValueInContext
GSWGetDefaultDocRoot
GSWInitializeAllMisc
GSWIntNumber
GSWIntToNSString
GSWIntToString
GSWIsBoolNumberNo
GSWIsBoolNumberYes
GSWJoinedStrings
GSWLogAssertGoodFn
GSWMessage_appendContentAsciiString
GSWMessage_appendContentBytes
GSWMessage_appendContentCharacter
GSWMessage_appendContentData
GSWMessage_appendContentHTMLAttributeValue
GSWMessage_appendContentHTMLConvertString
GSWMessage_appendContentHTMLEntitiesConvertString
GSWMessage_appendContentHTMLString
GSWMessage_appendContentString
GSWMessage_appendDebugCommentContentString
GSWMessage_content
GSWMessage_contentString
GSWMessage_replaceContentData
GSWMessage_stringByConvertingToHTML
GSWMessage_stringByConvertingToHTMLEntities
GSWMessage_stringByEscapingHTMLAttributeValue
GSWMessage_stringByEscapingHTMLString
GSWNumber_No
GSWNumber_Yes
GSWResponse_appendTagAttributeValueEscapingHTMLAttributeValue
GSWTime_format
GSWTime_msecPart
GSWTime_now
GSWTime_secPart
GSWTime_usecPart
GSWeb_appendStringWithImpPtr
GSWeb_objectAtIndexWithImpPtr
GetGSWContextIMPs
GetGSWDeclarationParserIMPS
GetGSWElementIDIMPs
GetGSWMessageIMPs
GetGSWResponseIMPs
InitializeGSWElementIDSELs
NSStringHTML_Initialize
NSStringWithObject
NSTimeIntervalFromTimeVal
NSTimeIntervalSleep
SBIsEqual
SBIsValueEqual
SBIsValueIsIn
WOApplicationMain
_ParserDebugLogBuffer
_parserIsBlankChar
_parserIsCommentTagType
_parserIsDigit
_parserIsDynamicOrCommentTagType
_parserIsDynamicTagType
_parserIsEndOfLineChar
_parserIsHexDigit
baseStringByConvertingFromHTML
baseStringByConvertingToHTML
boolValueFor
boolValueWithDefaultFor
isHeaderKeysEqual
loggedLockBeforeDateFromFunctionInFileInLine
loggedUnlockFromFunctionInFileInLine

Macros

GSWResponse_content
ParserDebugLogBuffer
_GSWAssociation_h__
_GSWBaseParser_h__
_GSWBindingNameAssociation_h__
_GSWBody_h__

Types

BYTE
GSWHTMLRawParserTagType
GSWIMP_BOOL
GSWIMP_DOUBLE
GSWIMP_FLOAT
GSWIMP_INT
GSWIMP_LONG
GSWIMP_SHORT
GSWProcState
GSWTemplateParserType
GSWTime
NSNumFmtType
UINT
UINT16
UINT32
UINT8
WOMarkupType
struct _GSWContextIMPs
struct _GSWDeclarationParserIMPs
struct _GSWElementIDIMPs
struct _GSWElementIDPart
struct _GSWHTMLConvertingStruct
struct _GSWMessageIMPs
struct _GSWResponseIMPs

Variables

ElementsMap_attributeElement
ElementsMap_dynamicElement
ElementsMap_gswebElement
ElementsMap_htmlBareString
GSASK_Class
GSASK_Field
GSASK_FieldTitle
GSASK_FieldValidate
GSASK_Language
GSFoundMarker
GSFrameworkPSuffix
GSFrameworkSuffix
GSLanguagePSuffix
GSLanguageSuffix
GSNotFoundMarker
GSWAPIPSuffix
GSWAPISuffix
GSWAjaxRequestHandlerKey
GSWApp
GSWApplicationPSuffix
GSWApplicationSuffix
GSWArchivePSuffix
GSWArchiveSuffix
GSWClassName_Application
GSWClassName_Component
GSWClassName_DefaultAdaptor
GSWClassName_DefaultContext
GSWClassName_DefaultRecording
GSWClassName_DefaultRequest
GSWClassName_DefaultResponse
GSWClassName_ResourceManager
GSWClassName_ServerSessionStore
GSWClassName_Session
GSWClassName_StatisticsStore
GSWComponentDeclarationsPSuffix
GSWComponentDeclarationsSuffix
GSWComponentName__Key
GSWComponentRequestHandlerKey
GSWComponentTemplatePSuffix
GSWComponentTemplateSuffix
GSWDirectActionRequestHandlerKey
GSWExceptionPageName
GSWFormValue_RemoteInvocationPost
GSWFramework_all
GSWFramework_app
GSWFramework_extensions
GSWHTTPHeader_AcceptEncoding
GSWHTTPHeader_AcceptLanguage
GSWHTTPHeader_AdaptorStats
GSWHTTPHeader_AdaptorVersion
GSWHTTPHeader_AnnotationServer
GSWHTTPHeader_ApplicationName
GSWHTTPHeader_AuthPass
GSWHTTPHeader_AuthType
GSWHTTPHeader_ContentDisposition
GSWHTTPHeader_ContentEncoding
GSWHTTPHeader_ContentLength
GSWHTTPHeader_ContentType
GSWHTTPHeader_Cookie
GSWHTTPHeader_CookieStupidIIS
GSWHTTPHeader_DocumentRoot
GSWHTTPHeader_FormURLEncoded
GSWHTTPHeader_GatewayInterface
GSWHTTPHeader_LoadAverage
GSWHTTPHeader_Location
GSWHTTPHeader_Method
GSWHTTPHeader_MethodGet
GSWHTTPHeader_MethodPost
GSWHTTPHeader_MimeType_TextPlain
GSWHTTPHeader_MultipartFormData
GSWHTTPHeader_Protocol
GSWHTTPHeader_ProtocolNum
GSWHTTPHeader_QueryString
GSWHTTPHeader_Recording
GSWHTTPHeader_RecordingApplicationNumber
GSWHTTPHeader_RecordingIDsCookie
GSWHTTPHeader_RecordingIDsURL
GSWHTTPHeader_RecordingSessionID
GSWHTTPHeader_Referer
GSWHTTPHeader_RefuseSessions
GSWHTTPHeader_RefusingRedirection
GSWHTTPHeader_RemoteAddress
GSWHTTPHeader_RemoteHost
GSWHTTPHeader_RemoteIdent
GSWHTTPHeader_RemoteUser
GSWHTTPHeader_RequestMethod
GSWHTTPHeader_RequestScheme
GSWHTTPHeader_Response_HeaderLineEnd
GSWHTTPHeader_Response_OK
GSWHTTPHeader_ServerName
GSWHTTPHeader_ServerPort
GSWHTTPHeader_ServerSoftware
GSWHTTPHeader_SetCookie
GSWHTTPHeader_UserAgent
GSWKey_ContextID
GSWKey_Data
GSWKey_ElementID
GSWKey_InstanceID
GSWKey_IsmapCoords
GSWKey_PageName
GSWKey_QuestionMarkSessionID
GSWKey_SessionID
GSWKey_SubmitAction
GSWLibraryPSuffix
GSWLibrarySuffix
GSWMainPageName
GSWMonitorServiceName
GSWNotification__SessionDidTimeOutNotification
GSWOPTValue_AjaxRequestHanderKey
GSWOPTValue_ComponentRequestHandlerKey
GSWOPTValue_DefaultTemplateParser_ANTLR
GSWOPTValue_DefaultTemplateParser_RawHTML
GSWOPTValue_DefaultTemplateParser_XML
GSWOPTValue_DefaultTemplateParser_XMLHTML
GSWOPTValue_DefaultTemplateParser_XMLHTMLNoOmittedTags
GSWOPTValue_DirectActionRequestHandlerKey
GSWOPTValue_PingActionRequestHandlerKey
GSWOPTValue_ResourceRequestHandlerKey
GSWOPTValue_SessionStoreClassName
GSWOPTValue_StaticResourceRequestHandlerKey
GSWOPTValue_StreamActionRequestHandlerKey
GSWOPT_Adaptor
GSWOPT_AdaptorHost
GSWOPT_AdditionalAdaptors
GSWOPT_AjaxRequestHandlerKey
GSWOPT_AllowsCacheControlHeader
GSWOPT_ApplicationBaseURL
GSWOPT_AutoOpenInBrowser
GSWOPT_CGIAdaptorURL
GSWOPT_CachingEnabled
GSWOPT_ComponentRequestHandlerKey
GSWOPT_Context
GSWOPT_DebugSetConfigFilePath
GSWOPT_DebuggingEnabled
GSWOPT_DefaultTemplateParser
GSWOPT_DefaultUndoStackLimit
GSWOPT_DirectActionRequestHandlerKey
GSWOPT_DirectConnectEnabled
GSWOPT_DisplayExceptionPages
GSWOPT_FrameworksBaseURL
GSWOPT_Host
GSWOPT_IncludeCommentsInResponse
GSWOPT_LifebeatDestinationHost
GSWOPT_LifebeatDestinationPort
GSWOPT_LifebeatEnabled
GSWOPT_LifebeatInterval
GSWOPT_ListenQueueSize
GSWOPT_LoadFrameworks
GSWOPT_LockDefaultEditingContext
GSWOPT_MonitorEnabled
GSWOPT_MonitorHost
GSWOPT_MultiThreadEnabled
GSWOPT_OutputPath
GSWOPT_PingActionRequestHandlerKey
GSWOPT_Port
GSWOPT_ProjectSearchPath
GSWOPT_RecordingClassName
GSWOPT_RecordingPath
GSWOPT_Request
GSWOPT_ResourceManagerClassName
GSWOPT_ResourceRequestHandlerKey
GSWOPT_Response
GSWOPT_SMTPHost
GSWOPT_SessionStoreClassName
GSWOPT_SessionTimeOut
GSWOPT_StaticResourceRequestHandlerKey
GSWOPT_StatisticsStoreClassName
GSWOPT_StatusDebuggingEnabled
GSWOPT_StatusLoggingEnabled
GSWOPT_StreamActionRequestHandlerKey
GSWOPT_WorkerThreadCount
GSWOPT_WorkerThreadCountMax
GSWOPT_WorkerThreadCountMin
GSWPagePSuffix
GSWPageRestorationErrorPageName
GSWPageSuffix
GSWPingActionRequestHandlerKey
GSWProtocol_HTTP
GSWProtocol_HTTPS
GSWResourceRequestHandlerKey
GSWScriptPSuffix
GSWScriptSuffix
GSWSessionCreationErrorPageName
GSWSessionRestorationErrorPageName
GSWStaticResourceRequestHandlerKey
GSWStringTableArrayPSuffix
GSWStringTableArraySuffix
GSWStringTablePSuffix
GSWStringTableSuffix
GSWTag_Name
GSWThreadKey_ComponentDefinition
GSWThreadKey_Context
GSWThreadKey_DefaultAdaptorThread
GSWURLPrefix
GSWebNamingConv
NSTNO
NSTYES
WOStrictFlag
actionClass__Key
actionNo__Key
actionYes__Key
action__Key
align__Key
appendElementIDComponentSEL
appendZeroElementIDComponentSEL
archiveNames__Key
archive__Key
associationClass__Key
border__Key
checked__Key
cidKey__Key
cidStore__Key
codeBase__Key
code__Key
componentDesign__Key
componentName__Key
conditionValue__Key
condition__Key
convertHTMLEntities__Key
convertHTML__Key
count__Key
data__Key
dateFormat__AltKey
dateFormat__Key
deleteAllElementIDComponentsSEL
deleteLastElementIDComponentSEL
directActionName__Key
disabled__Key
displayDisabled__Key
displayString__Key
elementIDStringSEL
elementID__Key
elementName__Key
enabled__Key
escapeHTML__Key
evaluateConditionInContextSEL
filePath__Key
file__Key
filename__Key
formValue__Key
formValues__Key
formatter__Key
fragmentIdentifier__Key
framework__Key
globalApplicationClassName
globalMime
gswAppendStringSEL
gswObjectAtIndexSEL
handleValidationException__Key
height__Key
hideInComment__Key
href__Key
hspace__Key
htmlConvertAttributeValueStruct
htmlConvertHTMLString
htmlConvertStruct
iBlock
identifier__Key
imageMapFileName__Key
imageMapRegions__Key
imageMapString__Key
incrementLastElementIDComponentSEL
index__Key
invokeAction__Key
isDisplayStringBefore__Key
isOrdered__Key
isParentSearchOverForSenderIDSEL
isSearchOverForSenderIDSEL
item__Key
key__Key
language__Key
level__Key
list__Key
method__Key
mimeType__Key
multipleSubmit__Key
multiple__Key
name__Key
negate__Key
noSelectionString__Key
numberFormat__AltKey
numberFormat__Key
object__Key
omitElement__Key
omitTags__Key
otherTagString__Key
pageDesign__Key
pageName__Key
pageSetVar__Prefix__Key
pageSetVars__Key
pathQueryDictionary__Key
post__Key
prefix__Key
queryDictionary__Key
redirectURL__Key
scriptFile__Key
scriptSource__Key
scriptString__Key
secure__Key
selectedValue__Key
selectedValues__Key
selectionValue__Key
selectionValues__Key
selection__Key
selections__Key
size__Key
src__Key
startIndex__Key
stopIndex__Key
string__Key
sublist__Key
suffix__Key
target__Key
type__Key
urlPrefix__Key
useDecimalNumber__Key
valueWhenEmpty__Key
value__Key
vspace__Key
width__Key
x__Key
y__Key

Up

GSWeb: Class GSWBaseParser

Authors

Manuel Guesdon (mguesdon@orange-concept.com)

Date: Generated at 2025-12-01

Copyright: (C) 2004 Free Software Foundation, Inc.


Contents -

  1. Software documentation for the GSWBaseParser class
  2. GSWBaseParser macros
  3. GSWBaseParser functions

Software documentation for the GSWBaseParser class

GSWBaseParser : NSObject

Declared in:
WebObjects/GSWBaseParser.h
Availability: OpenStep

The GSWBaseParser class provides fundamental parsing capabilities for GSWeb template and declaration processing. This abstract base class maintains parsing state and provides utility methods for position tracking, line/column calculation, and common parsing operations.

GSWBaseParser declares 4 Instance Variables

Method summary


currentLineAndColumnIndexesString 

- (NSString*) currentLineAndColumnIndexesString;
Availability: OpenStep

Returns a formatted string describing the current parsing position in terms of line and column numbers. This method is useful for generating human-readable error messages and debugging output that shows exactly where in the source text the parser is currently positioned.

currentLineIndex 

- (int) currentLineIndex;
Availability: OpenStep

Returns the line number (zero-based) corresponding to the current parsing position. This provides just the line information without column details, useful for quick line-based position tracking.

lineAndColumnIndexesFromIndex: returnsLineIndex: columnIndex: 

- (void) lineAndColumnIndexesFromIndex: (int)index returnsLineIndex: (int*)lineIndexPtr columnIndex: (int*)colIndexPtr;
Availability: OpenStep

Calculates and returns both line and column indexes for the specified character position through the provided pointer parameters. This method provides the most efficient way to obtain both coordinates simultaneously when both line and column information are needed.

lineAndColumnIndexesStringFromIndex: 

- (NSString*) lineAndColumnIndexesStringFromIndex: (int)index;
Availability: OpenStep

Returns a formatted string describing the line and column position corresponding to the specified character index within the source text. This allows conversion from absolute character positions to human-readable line and column coordinates for any position in the parsed content.

lineIndexFromIndex: 

- (int) lineIndexFromIndex: (int)index;
Availability: OpenStep

Returns the line number (zero-based) corresponding to the specified character index within the source text. This allows determination of line position for any character index in the parsed content.



Instance Variables for GSWBaseParser Class

_index

@protected int _index;
Availability: OpenStep

Current parsing position index
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.

_length

@protected int _length;
Availability: OpenStep

Total length of the source string
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.

_string

@protected NSString* _string;
Availability: OpenStep

The source string being parsed
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.

_uniBuf

@protected unichar* _uniBuf;
Availability: OpenStep

Unicode character buffer for efficient access
Warning the underscore at the start of the name of this instance variable indicates that, even though it is not technically private, it is intended for internal use within the package, and you should not use the variable in other code.




GSWBaseParser macros

ParserDebugLogBuffer

ParserDebugLogBuffer(uniBuf, length, index, charsCount)
Availability: OpenStep

Convenience macro for logging parser buffer state with automatic capture of function name, file, and line information. This provides an easy way to add debug logging throughout parser code.

_GSWBaseParser_h__

_GSWBaseParser_h__
Availability: OpenStep

Base parser class providing fundamental parsing functionality for GSWeb template and declaration parsers. This abstract class encapsulates common parsing operations including string buffer management, position tracking, and line/column index calculation utilities. GSWBaseParser serves as the foundation for more specialized parsers in the GSWeb framework, such as template parsers and declaration parsers. It maintains an internal Unicode character buffer for efficient parsing operations and provides methods to track parsing position with accurate line and column reporting for error messages and debugging. Key features: - Unicode character buffer management for efficient parsing - Line and column position tracking throughout parsing operations - Utility methods for common parsing tasks and position reporting - Foundation for specialized GSWeb parsers

GSWBaseParser functions

_ParserDebugLogBuffer

void _ParserDebugLogBuffer(char* fn, char* file, int line, unichar* uniBuf, int length, int index, int charsCount);
Availability: OpenStep

Debug logging function for parser buffer state. This function logs detailed information about the parser's current buffer state including position, remaining characters, and context information. Used internally for debugging parser operations and troubleshooting parsing issues.

_parserIsBlankChar

BOOL _parserIsBlankChar(unichar c);
Availability: OpenStep

Inline utility function that tests whether a Unicode character represents whitespace or blank characters. This includes space, tab, form feed, carriage return, newline, and vertical tab characters. Essential for parsing operations that need to skip or handle whitespace appropriately.

_parserIsDigit

BOOL _parserIsDigit(unichar c);
Availability: OpenStep

Inline utility function that tests whether a Unicode character represents a decimal digit (0-9). This provides efficient character classification for numeric parsing operations commonly needed in template and declaration parsing.

_parserIsEndOfLineChar

BOOL _parserIsEndOfLineChar(unichar c);
Availability: OpenStep

Inline utility function that tests whether a Unicode character represents an end-of-line character (carriage return or newline). This is specifically focused on line termination detection, useful for line-based parsing operations and accurate line counting during template processing.

_parserIsHexDigit

BOOL _parserIsHexDigit(unichar c);
Availability: OpenStep

Inline utility function that tests whether a Unicode character represents a hexadecimal digit (0-9, A-F, a-f). This provides efficient character classification for hexadecimal parsing operations, useful for color values, escape sequences, and other hex-encoded content in templates.


Up