LeviLamina
Loading...
Searching...
No Matches
PackIdVersion.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/resource/PackType.h"
7#include "mc/deps/core/sem_ver/SemVersion.h"
8#include "mc/platform/UUID.h"
9
11public:
12 // member variables
13 // NOLINTBEGIN
14 ::ll::TypedStorage<8, 16, ::mce::UUID> mId;
15 ::ll::TypedStorage<8, 24, ::SemVersion> mVersion;
16 ::ll::TypedStorage<1, 1, ::PackType> mPackType;
17 // NOLINTEND
18
19public:
20 // prevent constructor by default
21 PackIdVersion& operator=(PackIdVersion const&);
24
25public:
26 bool operator==(PackIdVersion const& rhs) const { return *mId == *rhs.mId && *mVersion == *rhs.mVersion; }
27
28public:
29 // member functions
30 // NOLINTBEGIN
31 MCAPI PackIdVersion(::std::string const& id, ::std::string const& version, ::PackType packType);
32
33 MCAPI PackIdVersion(::mce::UUID const& id, ::SemVersion const& version, ::PackType packType);
34
35 MCAPI ::std::string asString() const;
36
37 MCAPI bool operator<(::PackIdVersion const& rhs) const;
38
39 MCAPI ::PackIdVersion& operator=(::PackIdVersion&&);
40
41 MCAPI ~PackIdVersion();
42 // NOLINTEND
43
44public:
45 // static functions
46 // NOLINTBEGIN
47 MCAPI static ::PackIdVersion fromString(::std::string const& inputStr);
48 // NOLINTEND
49
50public:
51 // static variables
52 // NOLINTBEGIN
53 MCAPI static ::PackIdVersion& EMPTY();
54 // NOLINTEND
55
56public:
57 // constructor thunks
58 // NOLINTBEGIN
59 MCAPI void* $ctor(::std::string const& id, ::std::string const& version, ::PackType packType);
60
61 MCAPI void* $ctor(::mce::UUID const& id, ::SemVersion const& version, ::PackType packType);
62 // NOLINTEND
63
64public:
65 // destructor thunk
66 // NOLINTBEGIN
67 MCAPI void $dtor();
68 // NOLINTEND
69};
70
71namespace std {
72template <>
73struct hash<::PackIdVersion> {
74 size_t operator()(const ::PackIdVersion& packIdVersion) const {
75 return std::hash<std::string>()(packIdVersion.mId->asString() + packIdVersion.mVersion->asString());
76 }
77};
78} // namespace std
Definition SemVersion.h:15
Definition UUID.h:7
STL namespace.
Definition PackIdVersion.h:10