122add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao//===- NullFragment.h -----------------------------------------------------===// 222add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// 322add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// The MCLinker Project 422add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// 522add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// This file is distributed under the University of Illinois Open Source 622add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// License. See LICENSE.TXT for details. 722add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao// 822add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao//===----------------------------------------------------------------------===// 987f34658dec9097d987d254a990ea7f311bfc95fStephen Hines#ifndef MCLD_FRAGMENT_NULLFRAGMENT_H 1087f34658dec9097d987d254a990ea7f311bfc95fStephen Hines#define MCLD_FRAGMENT_NULLFRAGMENT_H 1122add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 1222add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao#include <mcld/Fragment/Fragment.h> 1322add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 1422add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liaonamespace mcld { 1522add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 1622add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liaoclass SectionData; 1722add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 1822add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao/** \class NullFragment 1922add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao * \brief NullFragment is a kind of MCFragment that presents the "end fragment" 2022add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao * referenced by some special symbols 2122add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao */ 2222add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liaoclass NullFragment : public Fragment 2322add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao{ 2422add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liaopublic: 2522add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao NullFragment(SectionData* pSD = NULL); 2622add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 2722add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao /// size - 2822add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao size_t size() const { return 0x0; } 2922add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 3022add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao static bool classof(const Fragment *F) 3122add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao { return F->getKind() == Fragment::Null; } 3222add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 3322add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao static bool classof(const NullFragment *) 3422add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao { return true; } 3522add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao}; 3622add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 3722add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao} // namespace of mcld 3822add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 3922add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao#endif 4022add6ff3426df1a85089fe6a6e1597ee3b6f300Shih-wei Liao 41