blob: 0f5fe43c7ffa0ef3265dabe38a6cd91e949fbe2c [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.8" xml:lang="en-US">
<compounddef id="structiceberg_1_1SnapshotRef" kind="struct" language="C++" prot="public">
<compoundname>iceberg::SnapshotRef</compoundname>
<includes refid="snapshot_8h" local="no">snapshot.h</includes>
<innerclass refid="structiceberg_1_1SnapshotRef_1_1Branch" prot="public">iceberg::SnapshotRef::Branch</innerclass>
<innerclass refid="structiceberg_1_1SnapshotRef_1_1Tag" prot="public">iceberg::SnapshotRef::Tag</innerclass>
<sectiondef kind="public-static-attrib">
<memberdef kind="variable" id="structiceberg_1_1SnapshotRef_1aba3c18bb45dd519bab94ea9998f11406" prot="public" static="yes" constexpr="yes" mutable="no">
<type>constexpr std::string_view</type>
<definition>constexpr std::string_view iceberg::SnapshotRef::kMainBranch</definition>
<argsstring></argsstring>
<name>kMainBranch</name>
<qualifiedname>iceberg::SnapshotRef::kMainBranch</qualifiedname>
<initializer>= &quot;main&quot;</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="69" column="37" bodyfile="iceberg/snapshot.h" bodystart="69" bodyend="-1"/>
</memberdef>
</sectiondef>
<sectiondef kind="public-attrib">
<memberdef kind="variable" id="structiceberg_1_1SnapshotRef_1a63ac8ff0babbe68126fb52e54e7e1adb" prot="public" static="no" mutable="no">
<type>int64_t</type>
<definition>int64_t iceberg::SnapshotRef::snapshot_id</definition>
<argsstring></argsstring>
<name>snapshot_id</name>
<qualifiedname>iceberg::SnapshotRef::snapshot_id</qualifiedname>
<briefdescription>
<para>A reference&apos;s snapshot ID. The tagged snapshot or latest snapshot of a branch. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="110" column="11" bodyfile="iceberg/snapshot.h" bodystart="110" bodyend="-1"/>
</memberdef>
<memberdef kind="variable" id="structiceberg_1_1SnapshotRef_1ae89f6fb03dacc07e6cde3c81a133add1" prot="public" static="no" mutable="no">
<type>std::variant&lt; <ref refid="structiceberg_1_1SnapshotRef_1_1Branch" kindref="compound">Branch</ref>, <ref refid="structiceberg_1_1SnapshotRef_1_1Tag" kindref="compound">Tag</ref> &gt;</type>
<definition>std::variant&lt;Branch, Tag&gt; iceberg::SnapshotRef::retention</definition>
<argsstring></argsstring>
<name>retention</name>
<qualifiedname>iceberg::SnapshotRef::retention</qualifiedname>
<briefdescription>
<para><ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> retention policy. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="112" column="16" bodyfile="iceberg/snapshot.h" bodystart="112" bodyend="-1"/>
</memberdef>
</sectiondef>
<sectiondef kind="public-func">
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a9d6b5d8784e00362d94ccb35c54e9be6" prot="public" static="no" const="yes" explicit="no" inline="no" noexcept="yes" virt="non-virtual">
<type>SnapshotRefType</type>
<definition>SnapshotRefType iceberg::SnapshotRef::type</definition>
<argsstring>() const noexcept</argsstring>
<name>type</name>
<qualifiedname>iceberg::SnapshotRef::type</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="114" column="19" bodyfile="iceberg/snapshot.cc" bodystart="63" bodyend="74"/>
</memberdef>
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a44c8fa194f7b90a6303d2b9d6ebb7a5a" prot="public" static="no" const="yes" explicit="no" inline="no" noexcept="yes" virt="non-virtual">
<type>std::optional&lt; int64_t &gt;</type>
<definition>std::optional&lt; int64_t &gt; iceberg::SnapshotRef::max_ref_age_ms</definition>
<argsstring>() const noexcept</argsstring>
<name>max_ref_age_ms</name>
<qualifiedname>iceberg::SnapshotRef::max_ref_age_ms</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="116" column="17" bodyfile="iceberg/snapshot.cc" bodystart="76" bodyend="87"/>
</memberdef>
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a873b9724bd77edbf12dbabdb98a37523" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
<type>std::unique_ptr&lt; <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &gt;</type>
<definition>std::unique_ptr&lt; SnapshotRef &gt; iceberg::SnapshotRef::Clone</definition>
<argsstring>(std::optional&lt; int64_t &gt; new_snapshot_id=std::nullopt) const</argsstring>
<name>Clone</name>
<qualifiedname>iceberg::SnapshotRef::Clone</qualifiedname>
<param>
<type>std::optional&lt; int64_t &gt;</type>
<declname>new_snapshot_id</declname>
<defval>std::nullopt</defval>
</param>
<briefdescription>
<para>Clone this <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> with an optional new snapshot ID. </para>
</briefdescription>
<detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>new_snapshot_id</parametername>
</parameternamelist>
<parameterdescription>
<para>Optional new snapshot ID. If not provided, uses the current snapshot_id </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>A unique_ptr to the cloned <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="145" column="19" bodyfile="iceberg/snapshot.cc" bodystart="130" bodyend="136"/>
</memberdef>
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a50cdaf229521f701109fd99d6f51fb32" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
<type>Status</type>
<definition>Status iceberg::SnapshotRef::Validate</definition>
<argsstring>() const</argsstring>
<name>Validate</name>
<qualifiedname>iceberg::SnapshotRef::Validate</qualifiedname>
<briefdescription>
<para>Validate the <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref>. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="149" column="10" bodyfile="iceberg/snapshot.cc" bodystart="89" bodyend="106"/>
</memberdef>
</sectiondef>
<sectiondef kind="public-static-func">
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1ae0d62ab650d10cd4381332760464e187" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<type>Result&lt; std::unique_ptr&lt; <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &gt; &gt;</type>
<definition>Result&lt; std::unique_ptr&lt; SnapshotRef &gt; &gt; iceberg::SnapshotRef::MakeBranch</definition>
<argsstring>(int64_t snapshot_id, std::optional&lt; int32_t &gt; min_snapshots_to_keep=std::nullopt, std::optional&lt; int64_t &gt; max_snapshot_age_ms=std::nullopt, std::optional&lt; int64_t &gt; max_ref_age_ms=std::nullopt)</argsstring>
<name>MakeBranch</name>
<qualifiedname>iceberg::SnapshotRef::MakeBranch</qualifiedname>
<param>
<type>int64_t</type>
<declname>snapshot_id</declname>
</param>
<param>
<type>std::optional&lt; int32_t &gt;</type>
<declname>min_snapshots_to_keep</declname>
<defval>std::nullopt</defval>
</param>
<param>
<type>std::optional&lt; int64_t &gt;</type>
<declname>max_snapshot_age_ms</declname>
<defval>std::nullopt</defval>
</param>
<param>
<type>std::optional&lt; int64_t &gt;</type>
<declname>max_ref_age_ms</declname>
<defval>std::nullopt</defval>
</param>
<briefdescription>
<para>Create a branch reference. </para>
</briefdescription>
<detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>snapshot_id</parametername>
</parameternamelist>
<parameterdescription>
<para>The snapshot ID for the branch </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>min_snapshots_to_keep</parametername>
</parameternamelist>
<parameterdescription>
<para>Optional minimum number of snapshots to keep </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>max_snapshot_age_ms</parametername>
</parameternamelist>
<parameterdescription>
<para>Optional maximum snapshot age in milliseconds </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>max_ref_age_ms</parametername>
</parameternamelist>
<parameterdescription>
<para>Optional maximum reference age in milliseconds </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>A Result containing a unique_ptr to the <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref>, or an error if validation failed </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="126" column="17" bodyfile="iceberg/snapshot.cc" bodystart="108" bodyend="120"/>
</memberdef>
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a91fa5ae1565099c173a1c0e0e7851f7c" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<type>Result&lt; std::unique_ptr&lt; <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &gt; &gt;</type>
<definition>Result&lt; std::unique_ptr&lt; SnapshotRef &gt; &gt; iceberg::SnapshotRef::MakeTag</definition>
<argsstring>(int64_t snapshot_id, std::optional&lt; int64_t &gt; max_ref_age_ms=std::nullopt)</argsstring>
<name>MakeTag</name>
<qualifiedname>iceberg::SnapshotRef::MakeTag</qualifiedname>
<param>
<type>int64_t</type>
<declname>snapshot_id</declname>
</param>
<param>
<type>std::optional&lt; int64_t &gt;</type>
<declname>max_ref_age_ms</declname>
<defval>std::nullopt</defval>
</param>
<briefdescription>
<para>Create a tag reference. </para>
</briefdescription>
<detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>snapshot_id</parametername>
</parameternamelist>
<parameterdescription>
<para>The snapshot ID for the tag </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>max_ref_age_ms</parametername>
</parameternamelist>
<parameterdescription>
<para>Optional maximum reference age in milliseconds </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>A Result containing a unique_ptr to the <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref>, or an error if validation failed </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="137" column="17" bodyfile="iceberg/snapshot.cc" bodystart="122" bodyend="128"/>
</memberdef>
</sectiondef>
<sectiondef kind="friend">
<memberdef kind="friend" id="structiceberg_1_1SnapshotRef_1a01bf700dbfb0e7307921d30795db8819" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
<type>bool</type>
<definition>bool operator==</definition>
<argsstring>(const SnapshotRef &amp;lhs, const SnapshotRef &amp;rhs)</argsstring>
<name>operator==</name>
<qualifiedname>iceberg::SnapshotRef::operator==</qualifiedname>
<param>
<type>const <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &amp;</type>
<declname>lhs</declname>
</param>
<param>
<type>const <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &amp;</type>
<declname>rhs</declname>
</param>
<briefdescription>
<para>Compare two snapshot refs for equality. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="152" column="15" bodyfile="iceberg/snapshot.h" bodystart="152" bodyend="154"/>
</memberdef>
</sectiondef>
<sectiondef kind="private-func">
<memberdef kind="function" id="structiceberg_1_1SnapshotRef_1a6e9a0b815729e9e46e1187fa2147288f" prot="private" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
<type>bool</type>
<definition>bool iceberg::SnapshotRef::Equals</definition>
<argsstring>(const SnapshotRef &amp;other) const</argsstring>
<name>Equals</name>
<qualifiedname>iceberg::SnapshotRef::Equals</qualifiedname>
<param>
<type>const <ref refid="structiceberg_1_1SnapshotRef" kindref="compound">SnapshotRef</ref> &amp;</type>
<declname>other</declname>
</param>
<briefdescription>
<para>Compare two snapshot refs for equality. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="iceberg/snapshot.h" line="158" column="8" bodyfile="iceberg/snapshot.cc" bodystart="138" bodyend="154"/>
</memberdef>
</sectiondef>
<briefdescription>
<para>A reference to a snapshot, either a branch or a tag. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<collaborationgraph>
<node id="1">
<label>iceberg::SnapshotRef</label>
<link refid="structiceberg_1_1SnapshotRef"/>
<childnode refid="2" relation="usage">
<edgelabel>kMainBranch</edgelabel>
</childnode>
</node>
<node id="3">
<label>std::basic_string_view&lt; Char &gt;</label>
</node>
<node id="2">
<label>std::string_view</label>
<childnode refid="3" relation="public-inheritance">
</childnode>
</node>
</collaborationgraph>
<location file="iceberg/snapshot.h" line="68" column="1" bodyfile="iceberg/snapshot.h" bodystart="68" bodyend="159"/>
<listofallmembers>
<member refid="structiceberg_1_1SnapshotRef_1a873b9724bd77edbf12dbabdb98a37523" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>Clone</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a6e9a0b815729e9e46e1187fa2147288f" prot="private" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>Equals</name></member>
<member refid="structiceberg_1_1SnapshotRef_1aba3c18bb45dd519bab94ea9998f11406" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>kMainBranch</name></member>
<member refid="structiceberg_1_1SnapshotRef_1ae0d62ab650d10cd4381332760464e187" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>MakeBranch</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a91fa5ae1565099c173a1c0e0e7851f7c" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>MakeTag</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a44c8fa194f7b90a6303d2b9d6ebb7a5a" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>max_ref_age_ms</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a01bf700dbfb0e7307921d30795db8819" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>operator==</name></member>
<member refid="structiceberg_1_1SnapshotRef_1ae89f6fb03dacc07e6cde3c81a133add1" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>retention</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a63ac8ff0babbe68126fb52e54e7e1adb" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>snapshot_id</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a9d6b5d8784e00362d94ccb35c54e9be6" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>type</name></member>
<member refid="structiceberg_1_1SnapshotRef_1a50cdaf229521f701109fd99d6f51fb32" prot="public" virt="non-virtual"><scope>iceberg::SnapshotRef</scope><name>Validate</name></member>
</listofallmembers>
</compounddef>
</doxygen>