eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'XML::SourceScannerNodeBuilder':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: SourceScannerNodeBuilder (in XML)


Inheritance:

   Object
   |
   +--XML::XMLNodeBuilder
      |
      +--XML::SourceScannerNodeBuilder

Package:
stx:goodies/xml/vw
Category:
XML-VW-Source Code
Version:
rev: 1.28 date: 2023/11/21 09:43:05
user: cg
file: SourceScannerNodeBuilder.st directory: goodies/xml/vw
module: stx stc-classLibrary: vw

Description:


This subclass of XMLNodeBuilder is used by the VisualWorks ChangeScanner to scan a VisualWorks XML source file and distill it into first XML elements and then
 into valid Smalltalk objects for display in the Change List tool.


Instance Variables:
	selectors       <Dictionary>  comment
	currentFile     <ReadStream>  comment
	currentPosition <Integer>  comment
	positions       <Dictionary>  comment
	changeBlock     <BlockClosure>  comment


Instance protocol:

accessing
o  currentFile

o  forgetPosition: elm

o  positionAt: elm

o  positionAt: elm put: p

building
o  attribute: name value: value

o  comment: aText

o  makeText: text

o  notation: name value: val

o  scanFile: file do: aBlock

o  tag: tag attributes: attributes elements: elements position: p stream: stream

initialization
o  initialize

private
o  doChange: aChange

o  getAttributesList: tag from: element

o  getBoolean: tag from: element default: defaultValue

o  getGlobalId: tag from: element

o  getGlobalIdAny: possibleTags from: element do: aBlock

o  getNameSpaceId: tag from: element

o  getNameSpaceOrClassId: tag from: element

o  getString: tag from: element default: defaultValue

o  getSymbol: tag from: element

o  getSymbol: tag from: element default: defaultValue

o  listFrom: node to: list
Over time, we may want to accomodate more complex
annotations for a class.

o  selectorFor: aTag

scanning
o  parcel_loaded: anElement

o  scan: element

o  scan_bundle_structure: anElement
self halt.

o  scan_class: anElement
N.B. Must create otherParameters in same order as keywords in class def.

o  scan_comment: anElement

o  scan_component_created: anElement
class := self

o  scan_component_definition_change: anElement
self halt.

o  scan_component_property: anElement
self halt.

o  scan_component_selector_change: anElement
self halt.

o  scan_copyright: anElement

o  scan_do_it: anElement

o  scan_initialize: anElement

o  scan_methods: anElement
classId is VW-formatted fully qualified reference, i.e., namespaces separated by dots

o  scan_name_space: anElement
N.B. Must create otherParameters in same order as keywords in class def.

o  scan_new_page: anElement

o  scan_parcel_loaded: anElement
self halt.

o  scan_pundle_loaded: anElement
self halt.

o  scan_relocate: anElement

o  scan_remove: anElement

o  scan_remove_selector: anElement
MethodOtherChange

o  scan_rename: anElement

o  scan_reorganize: anElement

o  scan_reorganize_data: anElement

o  scan_shared_variable: anElement
N.B. Must create otherParameters in same order as keywords in class def.

o  scan_st_source: anElement
Do nothing

o  scan_static: anElement
N.B. Must create otherParameters in same order as keywords in class def.

o  scan_time_stamp: anElement


Examples:


    |builder|

    builder := XML.SourceScannerNodeBuilder new.
    builder scanFile:'../../goodies/xml/vw/xmlFileInTests/Test1.xml' asFilename readStream
            do:[:element | self halt]
    |builder|

    builder := XML.SourceScannerNodeBuilder new.
    builder scanFile:'../../goodies/xml/vw/xmlFileInTests/Test2.xml' asFilename readStream
            do:[:element | self halt]
    |builder elements|

    elements := OrderedCollection new.
    builder := XML.SourceScannerNodeBuilder new.
    builder scanFile:'../../goodies/xml/vw/xmlFileInTests/XMLParser.xml' asFilename readStream
            do:[:element | elements add:element].
    elements inspect


ST/X 7.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Sat, 21 Dec 2024 17:26:10 GMT