MCPcopy Create free account
hub / github.com/Kitware/CMake / INVALID_NAMED_OBJECT

Function INVALID_NAMED_OBJECT

Source/cmJSONHelpers.cxx:51–97  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

49}
50
51ObjectErrorGenerator INVALID_NAMED_OBJECT(
52 std::function<std::string(Json::Value const*, cmJSONState*)> const&
53 nameGenerator)
54{
55#if defined(__GNUC__) && __GNUC__ >= 15
56# define CM_GCC_diagnostic_push_Wmaybe_uninitialized
57# pragma GCC diagnostic push
58# pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
59#endif
60 return [nameGenerator](
61 ObjectError errorType,
62 Json::Value::Members const& extraFields) -> ErrorGenerator {
63 return [nameGenerator, errorType, extraFields](
64 Json::Value const* value, cmJSONState* state) -> void {
65 std::string name = nameGenerator(value, state);
66 switch (errorType) {
67 case ObjectError::RequiredMissing:
68 state->AddErrorAtValue(cmStrCat("Invalid Required ", name), value);
69 break;
70 case ObjectError::InvalidObject:
71 state->AddErrorAtValue(cmStrCat("Invalid ", name), value);
72 break;
73 case ObjectError::ExtraField: {
74 for (auto const& member : extraFields) {
75 if (value) {
76 state->AddErrorAtValue(
77 cmStrCat("Invalid extra field \"", member, "\" in ", name),
78 &(*value)[member]);
79 } else {
80 state->AddError(
81 cmStrCat("Invalid extra field \"", member, "\" in ", name));
82 }
83 }
84 } break;
85 case ObjectError::MissingRequired:
86 state->AddErrorAtValue(cmStrCat("Missing required field \"",
87 state->key(), "\" in ", name),
88 value);
89 break;
90 }
91 };
92 };
93#ifdef CM_GCC_diagnostic_push_Wmaybe_uninitialized
94# pragma GCC diagnostic pop
95# undef CM_GCC_diagnostic_push_Wmaybe_uninitialized
96#endif
97}
98
99ErrorGenerator INVALID_OBJECT(ObjectError errorType,
100 Json::Value::Members const& extraFields)

Callers 8

InvalidRootQueryObjectFunction · 0.85
InvalidVersionObjectFunction · 0.85
INVALID_CONDITION_OBJECTFunction · 0.85
INVALID_VARIABLE_OBJECTFunction · 0.85
INVALID_PRESET_OBJECTFunction · 0.85
INVALID_ROOT_OBJECTFunction · 0.85
INVALID_OBJECTFunction · 0.85
INVALID_NAMED_OBJECT_KEYFunction · 0.85

Calls 4

AddErrorAtValueMethod · 0.80
keyMethod · 0.80
cmStrCatFunction · 0.70
AddErrorMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…