blob: 1e03c3f0f5c187d2ef9b0e764395327a89cb1e9f [file] [log] [blame]
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
file Copyright.txt or https://cmake.org/licensing for details. */
#pragma once
#include "cmConfigure.h" // IWYU pragma: keep
#include <string>
class cmProperty
{
public:
enum ScopeType
{
TARGET,
SOURCE_FILE,
DIRECTORY,
GLOBAL,
CACHE,
TEST,
VARIABLE,
CACHED_VARIABLE,
INSTALL
};
};
using cmProp = const std::string*;
inline const char* cmToCStr(cmProp p)
{
return p ? p->c_str() : nullptr;
}
inline const char* cmToCStrSafe(cmProp p)
{
return p ? p->c_str() : "";
}