Flow-IPC 1.0.0
Flow-IPC project: Full implementation reference.
process_credentials_fwd.hpp
Go to the documentation of this file.
1/* Flow-IPC: Core
2 * Copyright 2023 Akamai Technologies, Inc.
3 *
4 * Licensed under the Apache License, Version 2.0 (the
5 * "License"); you may not use this file except in
6 * compliance with the License. You may obtain a copy
7 * of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in
12 * writing, software distributed under the License is
13 * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
14 * CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing
16 * permissions and limitations under the License. */
17
18/// @file
19#pragma once
20
21#include <ostream>
22
23namespace ipc::util
24{
25
26// Types.
27
28// Find doc headers near the bodies of these compound types.
29
30class Process_credentials;
31
32// Free functions.
33
34/**
35 * Checks for by-value equality between two Process_credentials objects.
36 * process_invoked_as() does not participate in this and is not invoked.
37 *
38 * @relatesalso Process_credentials
39 * @param val1
40 * Value to compare.
41 * @param val2
42 * Value to compare.
43 * @return Whether the accessors all compare equal.
44 */
45bool operator==(const Process_credentials& val1, const Process_credentials& val2);
46
47/**
48 * Checks for by-value inequality between two Process_credentials objects.
49 * process_invoked_as() does not participate in this and is not invoked.
50 *
51 * @relatesalso Process_credentials
52 * @param val1
53 * Value to compare.
54 * @param val2
55 * Value to compare.
56 * @return Whether at least one accessor compares unequal.
57 */
58bool operator!=(const Process_credentials& val1, const Process_credentials& val2);
59
60/**
61 * Prints string representation of the given util::Process_credentials to the given `ostream`.
62 *
63 * process_invoked_as() does not participate in this and is not invoked; you may query that information
64 * if desired manually; just remember `val.process_id()` must be live at the time for it to work.
65 *
66 * @relatesalso util::Process_credentials
67 *
68 * @param os
69 * Stream to which to write.
70 * @param val
71 * Object to serialize.
72 * @return `os`.
73 */
74std::ostream& operator<<(std::ostream& os, const Process_credentials& val);
75
76} // namespace ipc::util
Flow-IPC module containing miscellaneous general-use facilities that ubiquitously used by ~all Flow-I...
std::ostream & operator<<(std::ostream &os, const Native_handle &val)
Prints string representation of the given Native_handle to the given ostream.
bool operator!=(Native_handle val1, Native_handle val2)
Negation of similar ==.
bool operator==(Native_handle val1, Native_handle val2)
Returns true if and only if the two Native_handle objects are the same underlying handle.