Nut/src/phrases/phraselist.h

35 lines
856 B
C
Raw Normal View History

2019-02-26 17:47:08 +08:00
#ifndef PHRASELIST_H
#define PHRASELIST_H
#include "../defines.h"
#include "phrasedatalist.h"
NUT_BEGIN_NAMESPACE
class AbstractFieldPhrase;
class PhraseList{
public:
bool isValid;
PhraseDataList data;
explicit PhraseList();
PhraseList(const PhraseList &other);
PhraseList(PhraseList &&other);
PhraseList(const AbstractFieldPhrase &other);
PhraseList(const AbstractFieldPhrase *left, const AbstractFieldPhrase &right);
PhraseList(PhraseList *left, PhraseList *right);
PhraseList(PhraseList *left, const AbstractFieldPhrase *right);
virtual ~PhraseList() = default;
PhraseList &operator =(const PhraseList &other);
PhraseList operator |(PhraseList &other);
PhraseList operator |(const AbstractFieldPhrase &other);
private:
void incAllDataParents();
};
NUT_END_NAMESPACE
#endif // PHRASELIST_H