VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "Token"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Member0" ,"NodeList"
Attribute VB_Ext_KEY = "Member1" ,"Node"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
'local variable(s) to hold property value(s)
Private mvarfileName As String 'local copy
Private mvarnextBNode As BNodeList 'local copy
Private mvarattributes As Integer 'local copy
Private mvarprevBNode As BNode 'local copy
Private mvardirLevel As Integer 'local copy
Private mvarEOF As Boolean 'local copy
Private mvarGeneration As Integer ' generation number
Private filenum As Integer ' file number to use for input
'initialize the tokenizer
Public Sub Start(fn As String)

filenum = FreeFile
Open fn For Input As #filenum
GetNext

End Sub
' gets the next BNode token from the input stream
Public Function GetNext() As BNode
Dim prevDirName As String, dirFlag As Boolean, n As BNode

If Not EOF(filenum) Then
    Input #filenum, mvarGeneration, mvardirLevel, mvarattributes, mvarfileName, dirFlag
    Set n = New BNode
    n.attributes = mvarattributes
    n.fileName = mvarfileName
    Set n.nextBNode = Nothing
    Set n.prevBNode = Nothing
Else
    mvarEOF = True
End If

Set GetNext = n
End Function
Public Property Let tEOF(ByVal vData As Boolean)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.EOF = 5
    mvarEOF = vData
End Property
Public Property Get tEOF() As Boolean
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.EOF
    tEOF = mvarEOF
End Property
Public Property Let dirLevel(ByVal vData As Integer)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.dirLevel = 5
    mvardirLevel = vData
End Property
Public Property Get dirLevel() As Integer
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.dirLevel
    dirLevel = mvardirLevel
End Property
Public Property Let generation(ByVal vData As Integer)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.dirLevel = 5
    mvarGeneration = vData
End Property
Public Property Get generation() As Integer
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.dirLevel
    generation = mvarGeneration
End Property
Public Property Set prevBNode(ByVal vData As BNode)
'used when assigning an Object to the property, on the left side of a Set statement.
'Syntax: Set x.prevBNode = Form1
    Set mvarprevBNode = vData
End Property
Public Property Get prevBNode() As BNode
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.prevBNode
    Set prevBNode = mvarprevBNode
End Property
Public Property Let attributes(ByVal vData As Integer)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.attributes = 5
    mvarattributes = vData
End Property
Public Property Get attributes() As Integer
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.attributes
    attributes = mvarattributes
End Property
Public Property Set nextBNode(ByVal vData As BNodeList)
'used when assigning an Object to the property, on the left side of a Set statement.
'Syntax: Set x.nextBNode = Form1
    Set mvarnextBNode = vData
End Property
Public Property Get nextBNode() As BNodeList
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.nextBNode
    Set nextBNode = mvarnextBNode
End Property
Public Property Let fileName(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.fileName = 5
    mvarfileName = vData
End Property
Public Property Get fileName() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.fileName
    fileName = mvarfileName
End Property
Private Sub Class_Terminate()

Close #filenum

End Sub
