英語版
このページの英語版を見る

dmd.dstruct

構造体宣言と共用体宣言。
Authors:

ソース dstruct.d

FuncDeclaration search_toString(StructDeclaration sd);
sd を検索して、この形式のメンバ関数を探す: extern (D) string toString();
Parameters:
StructDeclaration sd 検索する構造体宣言
Returns:
見つかればtoString() の FuncDeclaration、見つからなければnull の FuncDeclaration を生成する。
void semanticTypeInfo(Scope* sc, Type t);
TypeInfo生成のための追加のセマンティック解析を要求する。
Parameters:
Scope* sc コンテキスト
Type t TypeInfoが生成される型。
class StructDeclaration: dmd.aggregate.AggregateDeclaration;
struct の宣言はすべてこのインスタンスである。
final void determineTypeProperties();
のキャッシュされた型プロパティを計算する。TypeStruct
final bool isPOD();
structがPOD(Plain Old Data)であるかどうかを判定する。
PODは以下のように定義される:
  1. ネストされていない
  2. ポストブリット、デストラクタ、代入演算子がない。
  3. ref 、PODでないフィールドはない。
これらはCの構造体と互換性があるということだ。
Returns:
構造体がPODの場合、trueを返す。
final bool hasCopyConstruction();
構造体がコピー構造(コピーコンストラクタまたはポストブリット)かどうかを判定する。
Returns:
構造体にコピー構造がある場合はtrueを返す。
final bool hasRegularCtor(bool checkDisabled = false);
構造体宣言に、コピー・コンストラクタではない コンストラクタがあるかどうかを検証する。 オプションで、構造体宣言がコピーコンストラクタではない通常のコンストラクタを持つかどうかをチェックすることもできる。 宣言に通常のコンストラクタがあるかどうかを調べることもできる。 が無効になっていないかどうかを調べることもできる。
Parameters:
bool checkDisabled 構造体に通常の 無効でないコンストラクタがある場合
Returns:
構造体が通常の(オプションの、 それ以外の場合は false。
bool _isZeroInit(Expression exp);
expがすべて2進数の0かどうかを判定する。
Parameters:
Expression exp チェックする式
Returns:
すべてが2進数の0なら真
class UnionDeclaration: dmd.dstruct.StructDeclaration;
共用体は構造体の一種である。