# This file contains all the header-only C++ APIs/symbols in torch.
# If a symbol is added in this file, it should be tested in a .cpp file
# to guarantee that compiling these symbols do not require linking libtorch
# to ensure header-only-ness.

# torch/headeronly/util/shim_utils.h
TORCH_ERROR_CODE_CHECK

# c10/util/TypeCast.h
convert

# torch/headeronly/util/bit_cast.h
bit_cast

# torch/headeronly/util/BFloat16.h
BFloat16

# torch/headeronly/util/Float4_e2m1fn_x2.h
Float4_e2m1fn_x2

# torch/headeronly/util/Float8_e4m3fn.h
Float8_e4m3fn

# torch/headeronly/util/Float8_e4m3fnuz.h
Float8_e4m3fnuz

# torch/headeronly/util/Float8_e5m2.h
Float8_e5m2

# torch/headeronly/util/Float8_e5m2fnuz.h
Float8_e5m2fnuz

# torch/headeronly/util/Float8_e8m0fnu.h
Float8_e8m0fnu

# torch/headeronly/util/Half.h
Half
fp16_ieee_from_fp32_value
fp16_ieee_to_fp32_value

# torch/headeronly/util/floating_point_utils.h
# fp32_from_bits called from fp16_ieee_to_fp32_value
# fp32_to_bits called from fp16_ieee_from_fp32_value

# c10/util/complex.h, torch/headeronly/util/complex.h
complex

# ATen/NumericUtils.h, c10/util/generic_math.h
div_floor_floating
div_floor_integer
_isnan

# ATen/core/PhiloxRNGEngine.h
Philox4_32
randn

# ATen/cpu/vec/vec.h
Vectorized
clamp_min
convert
loadu
maximum
minimum
size

# torch/headeronly/cpu/vec/vec_half.h
float2half_scalar
half2float_scalar

# torch/headeronly/macros/Export.h
C10_API

# torch/headeronly/util/Exception.h
STD_TORCH_CHECK

# torch/headeronly/util/quint8.h
quint8

# torch/headeronly/util/quint4x2.h
quint4x2

# torch/headeronly/util/quint2x4.h
quint2x4

# torch/headeronly/util/qint8.h
qint8

# torch/headeronly/util/qint32.h
qint32

# torch/headeronly/util/bits.h
bits1x8
bits2x4
bits4x2
bits8
bits16

# torch/headeronly/core/ScalarType.h
NumScalarTypes
ScalarType
# dummy_int1_7_t, dummy_uint1_7_t tested through ScalarType
