ldc/ir/irtypestruct.h
2015-11-02 11:30:40 +02:00

38 lines
882 B
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//===-- ir/irtypestruct.h - IrType for structs and unions -------*- C++ -*-===//
//
// LDC the LLVM D compiler
//
// This file is distributed under the BSD-style LDC license. See the LICENSE
// file for details.
//
//===----------------------------------------------------------------------===//
#ifndef LDC_IR_IRTYPESTRUCT_H
#define LDC_IR_IRTYPESTRUCT_H
#include "ir/irtypeaggr.h"
class StructDeclaration;
class TypeStruct;
/// IrType for struct/union types.
class IrTypeStruct : public IrTypeAggr {
public:
///
static IrTypeStruct *get(StructDeclaration *sd);
///
IrTypeStruct *isStruct() override { return this; }
protected:
///
explicit IrTypeStruct(StructDeclaration *sd);
/// StructDeclaration this type represents.
StructDeclaration *sd = nullptr;
/// DMD TypeStruct of this type.
TypeStruct *ts = nullptr;
};
#endif