MCPcopy Create free account
hub / github.com/OpenArkStudio/ARK / AFNodeString

Class AFNodeString

src/plugin/kernel/include/AFCNode.hpp:218–289  ·  view source on GitHub ↗

data string

Source from the content-addressed store, hash-verified

216
217// data string
218class AFNodeString final : public AFINode
219{
220public:
221 explicit AFNodeString(std::shared_ptr<AFNodeMeta> pDataMeta)
222 {
223 data_meta_ = pDataMeta;
224 }
225
226 ~AFNodeString() override = default;
227
228 ArkDataType GetType() const override
229 {
230 ARK_ASSERT_RET_VAL(data_meta_ != nullptr, ArkDataType::DT_EMPTY);
231 return data_meta_->GetType();
232 }
233
234 void Reset() override
235 {
236 data_ = NULL_STR;
237 }
238
239 bool IsNull() const override
240 {
241 return data_.empty();
242 }
243
244 void CopyFrom(AFINode* other) override
245 {
246 ARK_ASSERT_RET_NONE(data_meta_ != nullptr && other != nullptr);
247 ARK_ASSERT_RET_NONE(data_meta_->GetType() == other->GetType());
248
249 SetString(other->GetString());
250 }
251
252 void SaveTo(AFINode* other) override
253 {
254 ARK_ASSERT_RET_NONE(data_meta_ != nullptr && other != nullptr);
255 ARK_ASSERT_RET_NONE(data_meta_->GetType() == other->GetType());
256
257 other->SetString(GetString());
258 }
259
260 const std::string& GetString() const override
261 {
262 return data_;
263 }
264
265 void SetString(const std::string& value) override
266 {
267 data_ = value;
268 }
269
270 std::string ToString() const override
271 {
272 return data_;
273 }
274
275 void FromString(const std::string& value) override

Callers 1

CreateDataByMetaFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected