// Copyright 2014 The Crashpad Authors // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. #ifndef CRASHPAD_UTIL_MISC_SYMBOLIC_CONSTANTS_COMMON_H_ #define CRASHPAD_UTIL_MISC_SYMBOLIC_CONSTANTS_COMMON_H_ //! \file //! //! \anchor symbolic_constant_terminology //! Symbolic constant terminology //! ============================= //! <dl> //! <dt>Family</dt> //! <dd>A group of related symbolic constants. Typically, within a single //! family, one function will be used to transform a numeric value to a //! string equivalent, and another will perform the inverse operation. //! Families include POSIX signals and Mach exception masks.</dd> //! <dt>Full name</dt> //! <dd>The normal symbolic name used for a constant. For example, in the //! family of POSIX signals, the strings `"SIGHUP"` and `"SIGSEGV"` are //! full names.</dd> //! <dt>Short name</dt> //! <dd>An abbreviated form of symbolic name used for a constant. Short names //! vary between families, but are commonly constructed by removing a //! common prefix from full names. For example, in the family of POSIX //! signals, the prefix is `SIG`, and short names include `"HUP"` and //! `"SEGV"`.</dd> //! <dt>Numeric string</dt> //! <dd>A string that does not contain a full or short name, but contains a //! numeric value that can be interpreted as a symbolic constant. For //! example, in the family of POSIX signals, `SIGKILL` generally has value //! `9`, so the numeric string `"9"` would be interpreted equivalently to //! `"SIGKILL"`.</dd> //! </dl> namespace crashpad { //! \brief Options for various `*ToString` functions in `symbolic_constants_*` //! files. //! //! \sa \ref symbolic_constant_terminology "Symbolic constant terminology" enum SymbolicConstantToStringOptionBits { … }; //! \brief A bitfield containing values of #SymbolicConstantToStringOptionBits. SymbolicConstantToStringOptions; //! \brief Options for various `StringTo*` functions in `symbolic_constants_*` //! files. //! //! Not every `StringTo*` function will implement each of these options. See //! function-specific documentation for details. //! //! \sa \ref symbolic_constant_terminology "Symbolic constant terminology" enum StringToSymbolicConstantOptionBits { … }; //! \brief A bitfield containing values of #StringToSymbolicConstantOptionBits. StringToSymbolicConstantOptions; } // namespace crashpad #endif // CRASHPAD_UTIL_MISC_SYMBOLIC_CONSTANTS_COMMON_H_