Stroika Library 3.0d16
 
Loading...
Searching...
No Matches
AccessMode.h
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4#ifndef _Stroika_Foundation_IO_AccessMode_h_
5#define _Stroika_Foundation_IO_AccessMode_h_ 1
6
7#include "Stroika/Foundation/StroikaPreComp.h"
8
10
11namespace Stroika::Foundation::IO {
12
13 /**
14 * First draft of access-mode support. Much better stuff in PHRDB permissions security logic.
15 * But this will do for now...
16 * -- LGP 2009-08-15
17 *
18 * \note Common::DefaultNames<> supported
19 */
20 enum class AccessMode : uint8_t {
21 eNoAccess,
22 eRead = 0x1,
23 eWrite = 0x2,
24
25 // composite values
26 eReadWrite = eRead | eWrite,
27
28 Stroika_Define_Enum_Bounds (eNoAccess, eReadWrite)
29 };
30
31 constexpr AccessMode operator& (AccessMode l, AccessMode r);
32 constexpr AccessMode operator| (AccessMode l, AccessMode r);
33
34}
35
36/*
37 ********************************************************************************
38 ***************************** Implementation Details ***************************
39 ********************************************************************************
40 */
41
42#include "AccessMode.inl"
43
44#endif /*_Stroika_Foundation_IO_AccessMode_h_*/
#define Stroika_Define_Enum_Bounds(FIRST_ITEM, LAST_ITEM)