iceberg-cpp
Loading...
Searching...
No Matches
Classes | Macros
exception.h File Reference
#include <stdexcept>
#include "iceberg/iceberg_export.h"

Go to the source code of this file.

Classes

class  iceberg::IcebergError
 Base exception class for exceptions thrown by the Iceberg library. More...
 
class  iceberg::ExpressionError
 Exception thrown when expression construction fails. More...
 

Macros

#define ICEBERG_CHECK_OR_DIE(condition, ...)
 

Detailed Description

Common exception types for Iceberg. Note that this library primarily uses return values for error handling, not exceptions. Some operations, however, will throw exceptions in contexts where no other option is available (e.g. a constructor). In those cases, an exception type from here will be used.

Macro Definition Documentation

◆ ICEBERG_CHECK_OR_DIE

#define ICEBERG_CHECK_OR_DIE (   condition,
  ... 
)
Value:
do { \
if (!(condition)) [[unlikely]] { \
throw iceberg::IcebergError(std::format(__VA_ARGS__)); \
} \
} while (0)
Base exception class for exceptions thrown by the Iceberg library.
Definition exception.h:36