LibKEduVocDocument

keduvocwordflags.h
1/*
2 * SPDX-FileCopyrightText: 2008 David Capel <wot.narg@gmail.com>
3 * SPDX-License-Identifier: GPL-2.0-or-later
4 */
5
6#ifndef KEDUVOCWORDFLAGS_H
7#define KEDUVOCWORDFLAGS_H
8
9class KEduVocWordFlag
10{
11public:
12 enum Flags {
13 // This is used for both empty flags and to denote no flags of the correct type were set.
14 NoInformation = 0x0,
15
16 // Gender
17 Masculine = 0x1,
18 Feminine = 0x2,
19 Neuter = 0x4,
20
21 // Plurality
22 Singular = 0x10,
23 Dual = 0x20,
24 Plural = 0x40,
25
26 // Part of Speech
27 Verb = 0x100,
28 Noun = 0x200,
29 Pronoun = 0x400,
30 Adjective = 0x800,
31 Adverb = 0x1000,
32 Article = 0x2000,
33 Conjunction = 0x4000,
34
35 // Person
36 First = 0x10000,
37 Second = 0x20000,
38 Third = 0x40000,
39
40 // Declension Case
41 Nominative = 0x80000,
42 Genitive = 0x100000,
43 Dative = 0x200000,
44 Accusative = 0x400000,
45 Ablative = 0x800000,
46 Locative = 0x1000000,
47 Vocative = 0x2000000,
48
49 // Other assorted flags
50 Definite = 0x4000000, // The article is definite
51 Indefinite = 0x8000000, // The article is indefinite
52 Regular = 0x10000000,
53 Irregular = 0x20000000
54 };
55
56 static const Flags genders = (Flags)(Masculine | Feminine | Neuter);
57 static const Flags partsOfSpeech = (Flags)(Noun | Verb | Article | Pronoun | Adjective | Adverb | Conjunction);
58 static const Flags numbers = (Flags)(Singular | Plural | Dual);
59 static const Flags cases = (Flags)(Nominative | Genitive | Dative | Accusative | Ablative | Locative | Vocative);
60 static const Flags persons = (Flags)(First | Second | Third);
61};
62
63Q_DECLARE_FLAGS(KEduVocWordFlags, KEduVocWordFlag::Flags)
64Q_DECLARE_OPERATORS_FOR_FLAGS(KEduVocWordFlags)
65
66#endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:15:30 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.