Lines Matching full:scanner
295 * C++ Scanner Interface:: Exchanges between yylex and parse
309 * Calc++ Scanner:: A pure C++ Flex scanner
318 * Java Scanner Interface:: Specifying the scanner for the parser
5923 call it. The function is sometimes referred to as a lexical scanner.
7324 parser fetches a new token from the scanner so that it can determine
7337 attempt to fetch a token from the scanner because no lookahead is
7383 lexical analysis performed by the scanner, and the user's semantic
7667 lexical scanner is probably correct. The previous lookahead token
7954 used by the scanner (note the difference between "useless" and "unused"
8571 Then the parser calls the scanner.
9113 * C++ Scanner Interface:: Exchanges between yylex and parse
9345 File: bison.info, Node: C++ Parser Interface, Next: C++ Scanner Interface, Prev: C++ Location Values, Up: C++ Parsers
9365 `yy::parser::token::FOO'. The scanner can use `typedef
9367 Calc++ Scanner::).
9397 File: bison.info, Node: C++ Scanner Interface, Next: A Complete C++ Example, Prev: C++ Parser Interface, Up: C++ Parsers
9399 10.1.5 C++ Scanner Interface
9402 The parser invokes the scanner by calling `yylex'. Contrary to C
9414 File: bison.info, Node: A Complete C++ Example, Prev: C++ Scanner Interface, Up: C++ Parsers
9424 We will use a Lex scanner, and more precisely, a Flex scanner, to
9425 demonstrate the various interaction. A hand written scanner is
9433 * Calc++ Scanner:: A pure C++ Flex scanner
9457 To support a pure interface with the parser (and the scanner) the
9503 To encapsulate the coordination with the Flex scanner, it is useful to
9506 // Handling the scanner.
9573 File: bison.info, Node: Calc++ Parser, Next: Calc++ Scanner, Prev: Calc++ Parsing Driver, Up: A Complete C++ Example
9601 The driver is passed by reference to the parser and to the scanner.
9697 File: bison.info, Node: Calc++ Scanner, Next: Calc++ Top Level, Prev: Calc++ Parser, Up: A Complete C++ Example
9699 10.1.6.4 Calc++ Scanner
9702 The Flex scanner first includes the driver declaration, then the
9728 interactive session with the user. Finally we enable the scanner
9787 Finally, because the scanner related driver's member function depend on
9788 the scanner's data, it is simpler to implement them in this file.
9810 File: bison.info, Node: Calc++ Top Level, Prev: Calc++ Scanner, Up: A Complete C++ Example
9845 * Java Scanner Interface:: Specifying the scanner for the parser
9971 File: bison.info, Node: Java Parser Interface, Next: Java Scanner Interface, Prev: Java Location Values, Up: Java Parsers
9996 interface, `Lexer' (see *note Java Scanner Interface::). Other than
10016 Build a new parser object using the specified scanner. There are
10019 If the scanner is defined by `%code lexer', this constructor is
10020 declared `protected' and is called automatically with a scanner
10042 File: bison.info, Node: Java Scanner Interface, Next: Java Action Features, Prev: Java Parser Interface, Up: Java Parsers
10044 10.2.5 Java Scanner Interface
10048 with a scanner: the scanner may be defined by `%code lexer', or defined
10049 elsewhere. In either case, the scanner has to implement the `Lexer'
10052 In the first case, the body of the scanner class is placed in `%code
10054 constructor to the scanner constructor, specify them with `%lex-param';
10057 In the second case, the scanner has to implement the `Lexer'
10063 In both cases, the scanner has to implement the following methods.
10094 File: bison.info, Node: Java Action Features, Next: Java Differences, Prev: Java Scanner Interface, Up: Java Parsers
10155 Print an error message using the `yyerror' method of the scanner
10201 scanner. If there is no such block, the scanner can be any
10203 Scanner Interface::).
10235 Scanner Interface::.
10265 class. *Note Java Scanner Interface::.
10294 Java Scanner Interface::.
10440 Lex-generated scanner to discard its current buffer and switch to the
10444 scanner needs to read from several input streams to handle features
10448 If your Flex-generated scanner uses start conditions (*note Start
10450 scanner's state, i.e., go back to the initial start condition, through
10465 of the scanner. Consider the following Lex code:
10556 Now the difficult part is ensuring that the scanner will send these
10557 tokens first. If your scanner is hand-written, that should be
10558 straightforward. If your scanner is generated by Lex, them there is
10562 scanner (e.g., a global variable or using `%lex-param' etc.), and use
10807 meant for the scanner. *Note Decl Summary::.
11255 Lexical analyzer (scanner)
12293 * getEndPos on Lexer: Java Scanner Interface.
12295 Scanner Interface.
12297 * getStartPos on Lexer: Java Scanner Interface.
12603 * yyerror on Lexer: Java Scanner Interface.
12612 * yylex on Lexer: Java Scanner Interface.
12614 * yylex on parser: C++ Scanner Interface.
12817 Node: C++ Scanner Interface378176
12822 Node: Calc++ Scanner387938
12829 Node: Java Scanner Interface401255