AttributeOption.h revision 533eae20118036f425f27bf0536ef0ccbb090b65
1eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//===- AttributeOption.h --------------------------------------------------===//
2eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//
3eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//                     The MCLinker Project
4eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//
5eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey// This file is distributed under the University of Illinois Open Source
6eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey// License. See LICENSE.TXT for details.
7eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//
8eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey//===----------------------------------------------------------------------===//
9eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey#ifndef MCLD_ATTRIBUTEOPTION_H
10eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey#define MCLD_ATTRIBUTEOPTION_H
11eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey#include <mcld/MC/Attribute.h>
12eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey
13eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkeynamespace mcld {
14eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey
15eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkeyclass AttributeOption
16eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey{
17eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkeypublic:
18eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey  AttributeOption();
19b5d55e302d2253e4bfb233ea705caf258cdc4cb9Jeff Sharkey  ~AttributeOption();
208e9992ae5053a3ac52d28a5a892aed0a0798c7abJeff Sharkey
21905b5891d2aa802f447ac2ce5d77b6c5ba06277aJeff Sharkey  const Attribute& predefined() const { return m_Predefined; }
22905b5891d2aa802f447ac2ce5d77b6c5ba06277aJeff Sharkey  Attribute&       predefined()       { return m_Predefined; }
231b5a2a96f793211bfbd39aa29cc41031dfa23950Jeff Sharkey
248e9992ae5053a3ac52d28a5a892aed0a0798c7abJeff Sharkey  const AttrConstraint& constraint() const { return m_Constraint; }
251b5a2a96f793211bfbd39aa29cc41031dfa23950Jeff Sharkey  AttrConstraint&       constraint()       { return m_Constraint; }
26eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey
27eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkeyprivate:
281059c3c30ad96a15695c1a92ae8896e078a6309fJeff Sharkey  Attribute m_Predefined;
291059c3c30ad96a15695c1a92ae8896e078a6309fJeff Sharkey  AttrConstraint m_Constraint;
30eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey};
31eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey
321059c3c30ad96a15695c1a92ae8896e078a6309fJeff Sharkey} // namespace mcld
331059c3c30ad96a15695c1a92ae8896e078a6309fJeff Sharkey
34eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey#endif
35eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey
36eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3Jeff Sharkey