SyntaxError (クラス)
public SyntaxError {inherits Error}
パッケージ: CURL.LANGUAGE.EXCEPTIONS
直接継承しているサブクラス: PackageBindingError, CircularImportError, ComponentMismatchError, AmbiguousNameError, QuantityParseError, Notice, CPASuppressErrorDirective

構文エラーの発生時にスローされる Exception クラス。


コンストラクタ
default:SyntaxError を作成します。
コンストラクタ public {SyntaxError.default
problem:String,
url:#Url,
line:int,
column:int
}
with-location:一つの変数からロケーション情報を取得する時のエラーを作成します。
コンストラクタ public {SyntaxError.with-location
where:#BaseSourceLocation,
problem:String,
error-name:#String = null
}

プロパティ
column:line の列番号。
アクセサ public final SyntaxError.column:int
error-name:エラーコードを保持している文字列です。
フィールド public constant SyntaxError.error-name:#String
error-type:
アクセサ public SyntaxError.error-type:SyntaxErrorType
line:url の行番号。
アクセサ public final SyntaxError.line:int
problem:人間が判読できるメッセージです。
アクセサ public final SyntaxError.problem:String
url:特定できる場合、エラーを発生させたファイル。
アクセサ public final SyntaxError.url:#Url
where:分かる場合は、エラーが発生したソースの場所です。
フィールド public-get hidden-set transient SyntaxError.where:#BaseSourceLocation
プロパティ 継承 BasicThrowable: message, value

メソッド
object-describe:ユーザーが印刷するのに適した方法でオブジェクトを記述します。
public {SyntaxError.object-describe}:void
メソッド 継承 Object: object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {SyntaxError.default
problem:String,
url:#Url,
line:int,
column:int
}

SyntaxError を作成します。

problem: Exception.message を生成するために場所情報が先頭に追加される、人間が判読できるメッセージ。
url: エラーが発生したリソースのUrl。この情報が入手できない場合は、null になります。Url は、Curl 言語のソース コードまたはエラーが発生した場所に関連する Url を表します。
line: エラーが発生した url 内の行番号。
column: エラーが発生した line 内の列番号。


with-location (コンストラクタ)
public {SyntaxError.with-location
where:#BaseSourceLocation,
problem:String,
error-name:#String = null
}

一つの変数からロケーション情報を取得する時のエラーを作成します。

where: エラーのソース ロケーションを特定します。where フィールドに保存され、url と、line または column の値を評価するのに使用されます。
problem: エラーを記述した人間が判読できるメッセージです。これは、ホストの言語に訳されている可能性があります。
error-name: 一意にエラーの型を判別するエラーのコード名を含む文字列です。

説明

BaseSourceLocation.get-url-line-column メソッドを使用して、location 変数から url や、行、列を取得することを除いて、SyntaxError.defaultコンストラクタに似ています。url や、行、列の評価は必要になるまで、つまり、いずれかのゲッターにアクセスされるかエラーが出力されるまで、行われません。
導入: バージョン 6.0



プロパティ詳細
column (アクセサ)
アクセサ public final SyntaxError.column:int

line の列番号。

注意事項

urlnull の場合、場所に関する情報はありません。


error-name (フィールド)
public constant SyntaxError.error-name:#String

エラーコードを保持している文字列です。

説明

これは with-location コンストラクタによってのみ設定されます。設定されない場合は、 nullになります。 non-null の場合、エラーの型を判別する文字列を含みます。
導入: バージョン 6.0


error-type (アクセサ)
アクセサ public SyntaxError.error-type:SyntaxErrorType
この項目はサポートされていません。内部使用限定となっています。
導入: バージョン 6.0


line (アクセサ)
アクセサ public final SyntaxError.line:int

url の行番号。

注意事項

urlnull の場合、場所に関する情報はありません。


problem (アクセサ)
アクセサ public final SyntaxError.problem:String

人間が判読できるメッセージです。

説明

これは message と同じです。


url (アクセサ)
アクセサ public final SyntaxError.url:#Url

特定できる場合、エラーを発生させたファイル。

注意事項

urlnull の場合、場所に関する情報はありません。


where (フィールド)
public-get hidden-set transient SyntaxError.where:#BaseSourceLocation

分かる場合は、エラーが発生したソースの場所です。

説明

このフィールドは、BaseSourceLocation オブジェクトとして表される、ソース コード内のエラーが発生した場所を保持します。エラーが with-location コンストラクタを使用して初期化された場合は、これは non-null になります。non-null の場合、urlline および column 属性を計算するために使用されます。
導入: バージョン 6.0





メソッド詳細
object-describe (メソッド)
public {SyntaxError.object-describe}:void

ユーザーが印刷するのに適した方法でオブジェクトを記述します。

out: 文字が送られるストリーム。
locale: self の表示方法をコントロールする Locale

説明

このメソッドは、一般に、"%s" フォーマット キーを使用して間接的に起動されます。

{format out = out, "%s", obj}
上記の表現は単純に以下を呼び出します。
{obj.object-describe out}


たとえば、uUrl である場合を考えます。
{u.object-describe os}
上記の表現により、u の名前が os に書き込まれます。

このメソッドの既定の実装では、以下を呼び出す効果があります。
{format out = out, locale = locale, "%v", obj }
("%v" フォーマット キーの詳細については、format を参照してください)。