LeviLamina
Loading...
Searching...
No Matches
Path.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/deps/core/file/PathPart.h"
5
6// auto generated forward declare list
7// clang-format off
8namespace Core { class PathPart; }
9namespace Core { class PathView; }
10namespace Core { class Result; }
11// clang-format on
12
13namespace Core {
14
15class Path {
16public:
17 // Path inner types declare
18 // clang-format off
19 struct path_less;
20 // clang-format on
21
22 // Path inner types define
23 struct path_less {};
24
25public:
26 Path(std::filesystem::path const& path) : Path(path.u8string()) {}
27 Path(std::u8string const& path) { mPathPart.mUtf8StdString = *reinterpret_cast<std::string const*>(&path); }
28 Path(std::string const& path) { mPathPart.mUtf8StdString = path; }
29 Path(char const* path) { mPathPart.mUtf8StdString = path; }
30 Path() = default;
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::Core::PathPart mPathPart;
36 // NOLINTEND
37
38public:
39 // static functions
40 // NOLINTBEGIN
41 MCAPI static ::Core::Result
42 makeFailure(::fmt::v10::basic_format_string<char, char const*> const& format, ::Core::PathView path);
43 // NOLINTEND
44
45public:
46 // static variables
47 // NOLINTBEGIN
48 MCAPI static ::Core::Path const& EMPTY();
49 // NOLINTEND
50
51public:
52 // constructor thunks
53 // NOLINTBEGIN
54 MCFOLD void* $ctor();
55 // NOLINTEND
56
57public:
58 // destructor thunk
59 // NOLINTBEGIN
60 MCFOLD void $dtor();
61 // NOLINTEND
62};
63
64} // namespace Core
Definition PathPart.h:7
Definition PathView.h:16
Definition Path.h:15
Definition Path.h:16
Definition Result.h:6
Definition Path.h:23