2 7~ 6  6 6 6 6 6 6 6 6 6   6 6  #~ # # # " 6 6 6 # textFileLjava/io/InputStream; lineNumberI colNumbertextLineLjava/lang/String; tokenType!Lorg/msh/tb/test/dbgen/TokenType;tokenscannerLjava/util/Scanner;()VCodeLineNumberTableLocalVariableTablethis#Lorg/msh/tb/test/dbgen/TokenReader; initialize nextToken()Z StackMapTable getTokenType#()Lorg/msh/tb/test/dbgen/TokenType;getToken()Ljava/lang/String; readTokeninibZbytes[BcCX isCharString(CZ)Z firstCharnextLine getTextFile()Ljava/io/InputStream; setTextFile(Ljava/io/InputStream;)V getLineNumber()I nextExpected6(Ljava/lang/String;Lorg/msh/tb/test/dbgen/TokenType;)Vtype Exceptions(Ljava/lang/String;)VexpectTokenType$(Lorg/msh/tb/test/dbgen/TokenType;)V expectStrings expectTokenthrowTokenReaderExceptionmsgthrowExpectedException readString&(Ljava/lang/String;)Ljava/lang/String;posiniposstringDelimiterisToken(Ljava/lang/String;)Z SourceFileTokenReader.java DEjava/util/Scanner 89UTF-8 D BC :; => ?@ @ A> SE _E <; e @  R @ \] @ @ M _R LM OP *org/msh/tb/test/dbgen/TokenReaderExceptionjava/lang/StringBuilder Expected  of type R Dj rj QR not expected. String expected pj not expected.  expectedLine : !org/msh/tb/test/dbgen/TokenReaderjava/lang/Objectjava/lang/String*(Ljava/io/InputStream;Ljava/lang/String;)Vorg/msh/tb/test/dbgen/TokenTypeEOFlengthEOLgetBytes()[BcharAt(I)Cjava/lang/CharacterisDigit(C)Z substring(II)Ljava/lang/String;trimNUMBERSTRINGisLetterOPERATORisLetterOrDigit hasNextLineequals(Ljava/lang/Object;)Zappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;toString(I)Ljava/lang/StringBuilder;indexOf(Ljava/lang/String;I)I!6789:;<;=>?@A>BCDEF/*G H IJKEF[!*Y**** G H !IJLMF[* * * G% &'(*H IJNOPFK* * * G34 5H IJN QRFK* * * G>? @H IJN SEFx** * * * ***  * * * *L**+*3 *Y`** * **=O*>**!***Y`*** * **>*Y`**Z**=6**=***)** 66*Y`* *** *>**+*3'*Y`K**=+*3 2**!***Y`* *** G3HI KNOP S.T8U?V@XD[N\O^Wapb}defilmnopqrvwx yz${'|I}Y~_bovHHGT;'HUVT;IJWWXyYZT;N,  [%+47 *G\]Ft% _  G  H %IJ%YZ%^VN @_EFC***** * *Y`*** * G* )16;BH CIJN1`aF/*GH IJbcF>*+G HIJ89deF/*GH IJfgF]*W,*  *W,* * * +!'"Y#Y$%&+&'&,()*G 8\H ]IJ]A>]h@N #i"fjFE*W*  *W* * +!"Y#Y$%&+&)*G)DHEIJEA>Ni"klFV* + *++,GHIJh@Ni"mRF}0* *#Y$*-&.&)/*-L*W+G  $ ).H0IJ)n>N$i"ojF;*-*-+!&*#Y$*-&0&+&1&)/*WG5:H;IJ;A>N"i"pjF['"Y#Y$2&*34&+&)*GH'IJ'q>i"rjFP*#Y$+&1&)/G HIJA>i"stF#`*-M,+!>*6*+*56**N*`*W* *-N*W-G>&( )+!,*-,/80@1E3H5R6T7Y8^;HH2u;!$v;8n>`IJ`w>[A>Yn>N,xyy yz{FW*-*-+!GDHIJA>N@|}