1
0
forked from GitHub/gf-core

add gu_variant_close in libgu

This commit is contained in:
kr.angelov
2013-09-26 10:41:52 +00:00
parent 920590a9cc
commit ab52863534
2 changed files with 15 additions and 0 deletions

View File

@@ -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)
{

View File

@@ -82,6 +82,7 @@ struct GuVariantInfo {
};
GuVariantInfo gu_variant_open(GuVariant variant);
GuVariant gu_variant_close(GuVariantInfo info);
/** @privatesection */
struct GuVariant {