# Functions
IsExported は、name が大文字で始まるかどうかを報告します。.
IsIdentifierは、nameがGoの識別子であるかどうかを報告します。つまり、 最初の文字が数字でない、文字、数字、アンダースコアで構成された空でない文字列です。キーワードは識別子ではありません。.
IsKeywordは、nameがGoのキーワード("func"や"return"など)であるかどうかを報告します。.
Lookupは識別子をキーワードトークンまたは [IDENT](キーワードでない場合)にマップします。.
NewFileSetは新しいファイルセットを作成します。.
# Constants
オペレータと区切り文字.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
キーワード.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
優先順位ベースの式の解析のための定数のセット。 非演算子は最低の優先度を持ち、1から始まる演算子が続きます。 最高の優先度はセレクタ、インデックス、その他の演算子や区切り記号トークンのための「キャッチオール」優先度として機能します。.
識別子と基本型のリテラル (これらのトークンはリテラルのクラスを表します).
トークンのリスト。.
特別なトークン.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
優先順位ベースの式の解析のための定数のセット。 非演算子は最低の優先度を持ち、1から始まる演算子が続きます。 最高の優先度はセレクタ、インデックス、その他の演算子や区切り記号トークンのための「キャッチオール」優先度として機能します。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
[Pos] のゼロ値はNoPosであり、ファイルおよび行情報は関連付けられていません。 また、NoPos.IsValid()はfalseです。NoPosは常に他の [Pos] 値よりも小さくなります。 NoPosに対応する [Position] 値は [Position] のゼロ値です。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
追加のトークン、特別な方法で処理される.
トークンのリスト。.
優先順位ベースの式の解析のための定数のセット。 非演算子は最低の優先度を持ち、1から始まる演算子が続きます。 最高の優先度はセレクタ、インデックス、その他の演算子や区切り記号トークンのための「キャッチオール」優先度として機能します。.
トークンのリスト。.
トークンのリスト。.
トークンのリスト。.
# Structs
Fileは、[FileSet] に属するファイルのハンドルです。 Fileには名前、サイズ、行オフセット表があります。.
FileSetはソースファイルの集合を表します。 ファイルセットのメソッドは同期されており、複数のゴルーチンが同時に呼び出すことができます。
ファイルセット内の各ファイルのバイトオフセットは、異なる(整数)間隔、すなわち間隔[base、base+size]にマッピングされます。 [FileSet.Base] はファイルの最初のバイトを表し、sizeは対応するファイルサイズです。 [Pos] 値はそのような間隔内の値です。 [Pos] 値が属する間隔を決定することで、ファイル、そのファイルのベース、そして [Pos] 値が表しているバイトオフセット(位置)を計算することができます。
新しいファイルを追加する際には、ファイルベースが必要です。それはすでにファイルセット内の任意のファイルの間隔の終わりを過ぎた整数値である必要があります。便宜上、 [FileSet.Base] はそのような値を提供します。それは単純に最後に追加されたファイルのPos間隔の終わりの位置に+1した値です。後で間隔を拡張する必要がない場合は、 [FileSet.Base] を [FileSet.AddFile] の引数として使用する必要があります。
FileSetが不要な場合、 [File] はFileSetから削除することができます。これにより、長時間実行されるアプリケーションでメモリ使用量を削減することができます。.
Positionはファイル、行、列の位置を含む任意のソース位置を表します。 Positionは行番号が> 0の場合に有効です。.
# Type aliases
Posはファイルセット内のソース位置のコンパクトなエンコーディングです。 より便利ながらもはるかに大きい表現のために、[Position] に変換することができます。
与えられたファイルに対するPosの値は、[base、base+size]の範囲内の数値です。 baseとsizeは、ファイルがファイルセットに追加される際に指定されます。 Posの値と対応するファイルベースの差は、その位置(Posの値によって表される)からのバイトオフセットに対応します。 したがって、ファイルベースオフセットは、ファイル内の最初のバイトを表すPosの値です。
特定のソースオフセット(バイト単位で測定される)のPos値を作成するには、 まず [FileSet.AddFile] を使用して対応するファイルを現在のファイルセットに追加し、 そのファイルのために[File.Pos](offset)を呼び出します。 特定のファイルセットfsetに対するPos値pを持つ場合、対応する [Position] 値はfset.Position(p)を呼び出すことで得られます。
Pos値は通常の比較演算子を使って直接比較することができます: 2つのPos値pとqが同じファイルにある場合、pとqを比較することは、対応するソースファイルのオフセットを比較することと等価です。 pとqが異なるファイルにある場合、qによって指定されるファイルがpによって指定されるファイルよりも前に対応するファイルセットに追加された場合、p < qはtrueです。.
TokenはGoプログラミング言語の字句トークンの集合です。.