英語版
このページの英語版を見る
dmd.initsem
初期化子の意味解析
Authors:
License:
出典 initsem.d
- Expression
toAssocArrayLiteral(ArrayInitializerai); - 可能であれば、配列イニシャライザを連想配列イニシャライザに変換する。Parameters:
ArrayInitializer ai変換する配列イニシャライザ Returns:変換後の連想配列イニシャライザ。aiが連想配列イニシャライザでない場合はErrorExp。 - Initializer
initializerSemantic(Initializerinit, Scope*sc, ref Typetx, NeedInterpretneedInterpret); - init に対してセマンティック解析を行う。Parameters:
Initializer initイニシャライザASTノード Scope* scコンテキスト Type txイニシャライザがなる必要のある "型"。もしtxが未完成の 型であり、イニシャライザがそれを完了すると、それは完全な型に更新される。 に更新される。ImportCは不完全型を持っている。 NeedInterpret needInterpretCTFEを実行する必要がある場合、 例えば、const宣言のイニシャライザである場合などである。 Returns:Initializer ErrorInitializer のイニシャライザである場合などである。 エラーが発生した場合 - Initializer
inferType(Initializerinit, Scope*sc); - 型を推測するために、initをExpression 。Parameters:
Initializer initInitializer ASTノード Scope* scコンテキスト Returns:成功すれば同等のExpInitializer 、翻訳できなければErrorInitializer 。 - Expression
initializerToExpression(Initializerinit, Typeitype= null, const boolisCfile= false); - initをExpression 。Parameters:
Initializer initInitializer ASTノード Type itypenull でなければ、式を強制する型に変換する。 bool isCfileデフォルトのイニシャライザはC言語と異なる Returns:Expression できない場合は 、その他のエラーは 。null ErrorExp - Expressions*
resolveStructLiteralNamedArgs(StructDeclarationsd, Typet, Scope*sc, Lociloc, Identifier[]names, scope Expression delegate(size_t i, Type fieldType)getExp, scope Loc delegate(size_t i)getLoc); - StructInitializer またはCallExp の名前と値が与えられる、 それを式のリストに解決して、StructLiteralExp を構築する。Parameters:
StructDeclaration sd構造体 Type t構造体の型(const やimmutable などの修飾子を含む可能性がある)。 Scope* sc構造体を初期化する式のスコープ。 Loc iloc構造体を初期化する式の位置 Identifier[] names引数リストで渡される識別子、null 位置引数のエントリ Expression delegate(size_t i, Type fieldType) getExpへのインデックスとデスティネーション型が与えられると、初期化する式を返す "関数"。 namesへのインデックスとデスティネーション型が与えられると、初期化式を返す関数である。Loc delegate(size_t i) getLocへのインデックスが与えられると、エラーメッセージの場所を返す。 namesにインデックスを与えると、エラーメッセージの場所を返すReturns:構造体のフィールドに順序付けられた式のリスト、またはエラー時にnull 。
Copyright © 1999-2025 by the D Language Foundation
DEEPL APIにより翻訳、ところどころ修正。
このページの最新版(英語)
このページの原文(英語)
翻訳時のdmdのバージョン: 2.108.0
サイト全体のドキュメントのdmdのバージョン: 2.109.1
最新のdmdのバージョン: 2.111.0 ダウンロード
翻訳日付:
HTML生成日時:
編集者: dokutoku