Squashed 'deps/nostalgia/' changes from b97d7d99..04f3d6b4
04f3d6b4 [keel] Fix some static const vars to be constexpr db2dc28f [keel] Remove use of removed ModelValue operator 74fb051e [ox] Remove panicing ModelValue operators 24fda7d5 [ox] Make serialize and allocate Writer_c functions take refs a60cdf0a Merge commit '9c712cc38ae706b021807b271899bce56c234fa5' 9a0a2fd4 Merge commit '56f9d7a4634c9de9b09df390c4385c67ab646607' 9c0acf1b Merge commit 'ace68f7c1d870ed53e69c55ba53709a9425388be' a41e93c5 Merge commit '8e0467ca5fdb3f983738a97c17cba742a0d233fd' dbcd37d7 Merge commit '0d61e5a064382a7076b62d32b25c70298ee0706e' 6a500345 Merge commit '057272347486efe5046691f32f51604e3a594e6a' f038b89a Merge commit 'cfc27a384b00388fc1ce30ac47c266ddd1f8e6f1' b9fddd47 Merge commit 'db978290f3465d2da30a27a98b12face50bbe091' 961ab756 Merge commit 'ae1f8ce11a81624f376be3a3dd56e80ba479dd89' d740609c Merge commit '6640e00ad9ee5b731a2ddb06da31436463c3ae65' 08be822b [ox/fs] Add FileAddress::operator==(FileAddress) git-subtree-dir: deps/nostalgia git-subtree-split: 04f3d6b491105a4f124d9738f612b9e0c505b2b0
This commit is contained in:
@ -94,16 +94,16 @@ class Converter: public BaseConverter {
|
||||
|
||||
[[nodiscard]]
|
||||
bool srcMatches(ox::CRStringView pSrcTypeName, int pSrcTypeVersion) const noexcept final {
|
||||
static const auto SrcTypeName = ox::requireModelTypeName<SrcType>();
|
||||
static const auto SrcTypeVersion = ox::requireModelTypeVersion<SrcType>();
|
||||
constexpr auto SrcTypeName = ox::requireModelTypeName<SrcType>();
|
||||
constexpr auto SrcTypeVersion = ox::requireModelTypeVersion<SrcType>();
|
||||
return pSrcTypeName == SrcTypeName
|
||||
&& pSrcTypeVersion == SrcTypeVersion;
|
||||
}
|
||||
|
||||
[[nodiscard]]
|
||||
bool dstMatches(ox::CRStringView dstTypeName, int dstTypeVersion) const noexcept final {
|
||||
static const auto DstTypeName = ox::StringView(ox::requireModelTypeName<DstType>());
|
||||
static const auto DstTypeVersion = ox::requireModelTypeVersion<DstType>();
|
||||
constexpr auto DstTypeName = ox::StringView(ox::requireModelTypeName<DstType>());
|
||||
constexpr auto DstTypeVersion = ox::requireModelTypeVersion<DstType>();
|
||||
return dstTypeName == DstTypeName
|
||||
&& dstTypeVersion == DstTypeVersion;
|
||||
}
|
||||
|
@ -14,15 +14,15 @@ namespace keel {
|
||||
static ox::Error pathToInode(
|
||||
keel::Context &ctx, ox::FileSystem &dest, ox::ModelObject &obj) noexcept {
|
||||
auto &o = obj;
|
||||
auto type = static_cast<ox::FileAddressType>(o["type"].get<int8_t>());
|
||||
auto &data = o["data"].get<ox::ModelUnion>();
|
||||
auto type = static_cast<ox::FileAddressType>(o.at("type").unwrap()->get<int8_t>());
|
||||
auto &data = o.at("data").unwrap()->get<ox::ModelUnion>();
|
||||
ox::String path;
|
||||
switch (type) {
|
||||
case ox::FileAddressType::Path:
|
||||
path = data["path"].get<ox::String>();
|
||||
path = data.at("path").unwrap()->get<ox::String>();
|
||||
break;
|
||||
case ox::FileAddressType::ConstPath:
|
||||
path = data["constPath"].get<ox::String>();
|
||||
path = data.at("constPath").unwrap()->get<ox::String>();
|
||||
break;
|
||||
case ox::FileAddressType::Inode:
|
||||
case ox::FileAddressType::None:
|
||||
@ -33,7 +33,7 @@ static ox::Error pathToInode(
|
||||
oxReturnError(keel::uuidToPath(ctx, uuid).moveTo(path));
|
||||
}
|
||||
oxRequire(s, dest.stat(path));
|
||||
oxReturnError(o["type"].set(static_cast<int8_t>(ox::FileAddressType::Inode)));
|
||||
oxReturnError(o.at("type").unwrap()->set(static_cast<int8_t>(ox::FileAddressType::Inode)));
|
||||
oxOutf("path to inode: {} => {}\n", path, s.inode);
|
||||
return data.set(2, s.inode);
|
||||
}
|
||||
|
Reference in New Issue
Block a user