mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-11-04 11:15:27 -07:00
add gu_variant_close in libgu
This commit is contained in:
1 parent
2e2f74741a
commit
216490f275
2 files changed
+15
No files matched your search
@@ -83,6 +83,20 @@ GuVariantInfo gu_variant_open(GuVariant variant)
|
||||
return info;
|
||||
}
|
||||
|
||||
GuVariant gu_variant_close(GuVariantInfo info)
|
||||
{
|
||||
GuVariant variant;
|
||||
|
||||
if (((size_t)info.tag) > GU_VARIANT_ALIGNMENT - 2) {
|
||||
variant.p = (uintptr_t)info.data;
|
||||
assert(gu_variant_tag(variant) == info.tag);
|
||||
} else {
|
||||
variant.p = ((uintptr_t)info.data) | (info.tag + 1);
|
||||
}
|
||||
|
||||
return variant;
|
||||
}
|
||||
|
||||
int
|
||||
gu_variant_intval(GuVariant variant)
|
||||
{
|
||||
|
||||
@@ -82,6 +82,7 @@ struct GuVariantInfo {
|
||||
};
|
||||
|
||||
GuVariantInfo gu_variant_open(GuVariant variant);
|
||||
GuVariant gu_variant_close(GuVariantInfo info);
|
||||
|
||||
/** @privatesection */
|
||||
struct GuVariant {
|
||||
|
||||
Reference in new issue
Block a user