nany
qualifiers.h
1 #pragma once
2 #include <yuni/yuni.h>
3 #include <yuni/core/tribool.h>
4 
5 
6 namespace ny {
7 
8 
9 class Qualifiers final {
10 public:
11  struct Default final {
13  static constexpr bool constant = false;
15  static constexpr bool nullable = false;
17  static constexpr bool ref = true;
18  };
19 
20 
21 public:
23  Yuni::Tribool constant = Default::constant;
25  Yuni::Tribool ref = Default::ref;
27  Yuni::Tribool nullable = Default::nullable;
28 
32  void merge(const Qualifiers&);
33 
37  void clear();
38 
39 
41 
42  bool operator == (const Qualifiers&) const;
45  bool operator != (const Qualifiers&) const;
47 
48 }; // class Qualifiers
49 
50 
51 } // namespace ny
52 
53 #include "qualifiers.hxx"
static constexpr bool ref
reference by default ?
Definition: qualifiers.h:17
static constexpr bool constant
Constant by default ?
Definition: qualifiers.h:13
void merge(const Qualifiers &)
Merge with another qualifiers.
Definition: qualifiers.hxx:8
Definition: ast.cpp:6
bool operator!=(const Qualifiers &) const
Not equal.
Definition: qualifiers.hxx:23
bool operator==(const Qualifiers &) const
Comparison.
Definition: qualifiers.hxx:18
Definition: qualifiers.h:11
void clear()
Clear.
Definition: qualifiers.hxx:28
Definition: qualifiers.h:9
static constexpr bool nullable
nullable by default ?
Definition: qualifiers.h:15