[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

A. Bisonの記号一覧

error

エラー回復のために予約されているトークン名です。 このトークンが文法規則の中で使われていると、Bison構文解析器は、 構文エラーを認識し、プロセスの実行を中断しません。 実質的には、エラーを含む文が、有効であると認識されます。 エラーが起きると、errorトークンが現在の先読みトークンになります。 errorに対応するアクションが実行されて、 先読みトークンがエラーの原因になったトークンに戻されます。 See section エラーからの回復

YYABORT

回復不可能な構文エラーが発生した場合のためのマクロで、 実行するとただちにyyparseが1を返します。 エラー報告関数yyerrorは呼び出されません。 See section The Parser Function yyparse

YYACCEPT

構文解析器が言語を完全に読み終えた場合のためのマクロで、 実行するとただちにyyparseが0を返します。 See section The Parser Function yyparse

YYBACKUP

構文解析器のスタックから1個の値を捨て、先読みトークンのふりをさせます。 See section Special Features for Use in Actions

YYERROR

構文エラーがちょうど検出された場合のためのマクロで、 yyerrorを呼び、可能ならば通常のエラー回復処理 (see section エラーからの回復)を実行し、不可能ならば yyparseが1を返します。 See section エラーからの回復

YYERROR_VERBOSE

Bison宣言部で#defineによってこのマクロを定義すると、 yyerrorが呼ばれたときに表示されるエラー報告が詳しくなります。

YYINITDEPTH

構文解析器スタックの最初の大きさを指定するマクロです。 See section スタックオーバーフローと防ぎ方

YYLEX_PARAM

yyparseyylexに渡すための、追加の引数または 引数の並びを指定するためのマクロです。 See section Calling Conventions for Pure Parsers

YYLTYPE

yylocのデータ型を示すマクロで、4個のメンバからなる構造体です。 See section Textual Positions of Tokens

yyltype

YYLTYPEの省略時の値です。

YYMAXDEPTH

構文解析器のスタックの最大の大きさを指定するマクロです。 See section スタックオーバーフローと防ぎ方

YYPARSE_PARAM

yyparseが受け取るべき引数の名前を指定するマクロです。 See section Calling Conventions for Pure Parsers

YYRECOVERING

構文解析器が構文エラーから回復している途中かどうかを示す値のマクロです。 See section Special Features for Use in Actions

YYSTYPE

意味値のデータ型を指定するためのマクロで、省略するとintになります。 See section Data Types of Semantic Values

yychar

広域的なint型の変数で、現在の先読みトークンの番号を記憶しています (再入可能な構文解析器では、この変数はyyparseに局所的です)。 エラー回復規則のアクションは、この変数の値を調べられます。 See section Special Features for Use in Actions

yyclearin

エラー回復規則のアクションで使われるマクロです。 直前の先読みトークンを消去します。 See section エラーからの回復

yydebug

int型の広域変数で、初期値は0です。 yydebugの値が0でないと、構文解析器は、 読み込んだ記号と構文解析器のアクションに関する情報を表示します。 See section Debugging Your Parser

yyerrok

構文エラーの後で、構文解析器をただちに通常の状態に戻すためのマクロです。 See section エラーからの回復

yyerror

エラーが起きたときにyyparseから呼び出される、ユーザー定義関数です。 この関数は1個の引数を受け取り、その引数はエラーの報告を含む文字列への ポインタです。 See section The Error Reporting Function yyerror

yylex

ユーザー定義の字句解析関数で、次のトークンを得るために、 引数なしで呼び出されます。 See section The Lexical Analyzer Function yylex

yylval

トークンに関連する意味値をyylexが置くための広域変数です (再入可能な構文解析器では、これはyyparseの局所変数で、 その番地がyylexに渡されます)。 See section Semantic Values of Tokens

yylloc

トークンに関連する行番号と桁番号をyylexが置くための 広域変数です(再入可能な構文解析器では、この変数はyyparseに 局所的で、その番地がyylexに渡されます)。 文法アクションで`@'機能を使わないならば、 この値を無視してかまいません。 See section Textual Positions of Tokens

yynerrs

構文エラーが発生するたびにBisonが値を1増やす広域変数です (再入可能な構文解析器では、この変数はyyparseに局所的です)。 See section The Error Reporting Function yyerror

yyparse

Bisonによって生成される構文解析器関数で、 この関数を呼び出すことによって構文解析が始まります。 See section The Parser Function yyparse

%left

トークンに左結合性を与えるBison宣言です。 See section Operator Precedence

%no_lines

構文解析器ファイルの中に#lineディレクティブを生成しないための Bison宣言です。 See section Bison宣言の要約

%nonassoc

トークンに非結合性を与えるためのBison宣言です。 See section Operator Precedence

%prec

指定された規則に優先順位を与えるためのBison宣言です。 See section Context-Dependent Precedence

%pure_parser

再入可能な構文解析器を生成するためのBison宣言です。 See section A Pure (Reentrant) Parser

%raw

通常のYacc互換トークン番号の代わりに、 トークン表のBison内部トークン番号を使うための、Bison宣言です。 See section Bison宣言の要約

%right

トークンに右結合性を与えるためのBison宣言です。 See section Operator Precedence

%start

開始記号を指定するためのBison宣言です。 See section The Start-Symbol

%token

優先順位を指定せずにトークンを宣言するためのBison宣言です。 See section Token Type Names

%token_table

構文解析器ファイルの中でトークン名の表を挿入するためのBison宣言です。 See section Bison宣言の要約

%type

非終端記号を宣言するためのBison宣言です。 See section Nonterminal Symbols

%union

意味値として可能ないくつかのデータ型を指定するためのBison宣言です。 See section The Collection of Value Types.

Bison文法ファイルの中で使う、区切り記号があります。

` %%'

Bison宣言部、文法規則部、(省略可能な)Cプログラム部を区切る記号です。 See section The Overall Layout of a Bison Grammar

` %{ %}'

文法ファイルの`%{'と`%}'の間に書かれたすべてのプログラムは、 そのまま構文解析器ファイルに複写されます。 このようなプログラムが、文法ファイルのC宣言部を構成します。 See section Outline of a Bison Grammar

` /*…*/'

C言語と同様のコメントです。

` :'

規則の結果と構成要素を分離する記号です。 See section Syntax of Grammar Rules

` ;'

規則の終わりの記号です。 See section Syntax of Grammar Rules

` |'

同一の非終端記号を結果とする複数の規則を区切る記号です。 See section Syntax of Grammar Rules


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Akihiro Sagawa on June, 1 2005 using texi2html 1.70.