This commit introduces a basic ApplicationState class, without being used for anything yet to aid reviewers. At a later point actual usages of this new class may be added separately. ## References This commit is an initial step towards implementing #8324. ## PR Checklist * [x] I work here * [x] Tests added/passed ## Validation Steps Performed * Creating a `state.json` with `{"generatedProfiles":["{53e75ed9-2b63-4118-856d-0510c4f6b97e}"]}` updates the ApplicationState, as observed through a debugger ✔️ * Deleting the "generatedProfiles" field sets the corresponding field back to nullopt ✔️
12 lines
528 B
C++
12 lines
528 B
C++
// Copyright (c) Microsoft Corporation.
|
|
// Licensed under the MIT license.
|
|
|
|
namespace Microsoft::Terminal::Settings::Model
|
|
{
|
|
std::filesystem::path GetBaseSettingsPath();
|
|
std::string ReadUTF8File(const std::filesystem::path& path);
|
|
std::optional<std::string> ReadUTF8FileIfExists(const std::filesystem::path& path);
|
|
void WriteUTF8File(const std::filesystem::path& path, const std::string_view content);
|
|
void WriteUTF8FileAtomic(const std::filesystem::path& path, const std::string_view content);
|
|
}
|