iceberg-cpp
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
name_mapping.h File Reference

Define schema name mapping APIs. More...

#include <functional>
#include <map>
#include <memory>
#include <optional>
#include <span>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <vector>
#include "iceberg/iceberg_export.h"
#include "iceberg/result.h"
#include "iceberg/schema.h"

Go to the source code of this file.

Classes

struct  iceberg::MappedField
 An immutable mapping between a field ID and a set of names. More...
 
class  iceberg::MappedFields
 A list of field mappings for child field of structs, maps, and lists. More...
 
class  iceberg::NameMapping
 Represents a mapping from external schema names to Iceberg type IDs. More...
 

Namespaces

namespace  iceberg
 Core Apache Iceberg C++ APIs.
 

Typedefs

using iceberg::MappedFieldConstRef = std::reference_wrapper< const MappedField >
 

Functions

ICEBERG_EXPORT std::string iceberg::ToString (const MappedField &field)
 
ICEBERG_EXPORT std::string iceberg::ToString (const MappedFields &fields)
 
ICEBERG_EXPORT std::string iceberg::ToString (const NameMapping &mapping)
 
ICEBERG_EXPORT Result< std::unique_ptr< NameMapping > > iceberg::CreateMapping (const Schema &schema)
 Create a name-based mapping for a schema.
 
ICEBERG_EXPORT Result< std::unique_ptr< NameMapping > > iceberg::UpdateMapping (const NameMapping &mapping, const std::unordered_map< int32_t, std::shared_ptr< SchemaField > > &updates, const std::multimap< int32_t, int32_t > &adds)
 Update a name-based mapping using changes to a schema.
 

Detailed Description

Define schema name mapping APIs.