mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-04-24 04:39:03 +02:00
This corresponds to DMD commit a913ce4bc59a94a022a27e390fc841f4aededffb. Doesn't build Phobos yet.
40 lines
867 B
C++
40 lines
867 B
C++
//===-- 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() { return this; }
|
||
|
||
protected:
|
||
///
|
||
IrTypeStruct(StructDeclaration* sd);
|
||
|
||
/// StructDeclaration this type represents.
|
||
StructDeclaration* sd;
|
||
|
||
/// DMD TypeStruct of this type.
|
||
TypeStruct* ts;
|
||
};
|
||
|
||
#endif
|