MCPcopy Create free account
hub / github.com/arrayfire/arrayfire / castArray

Function castArray

src/backend/common/cast.cpp:27–53  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25
26template<typename To>
27detail::Array<To> castArray(const af_array &in) {
28 const ArrayInfo &info = getInfo(in);
29
30 if (static_cast<af::dtype>(af::dtype_traits<To>::af_type) ==
31 info.getType()) {
32 return getArray<To>(in);
33 }
34
35 switch (info.getType()) {
36 case f32: return common::cast<To, float>(getArray<float>(in));
37 case f64: return common::cast<To, double>(getArray<double>(in));
38 case c32: return common::cast<To, cfloat>(getArray<cfloat>(in));
39 case c64: return common::cast<To, cdouble>(getArray<cdouble>(in));
40 case s32: return common::cast<To, int>(getArray<int>(in));
41 case u32: return common::cast<To, uint>(getArray<uint>(in));
42 case s8: return common::cast<To, schar>(getArray<schar>(in));
43 case u8: return common::cast<To, uchar>(getArray<uchar>(in));
44 case b8: return common::cast<To, char>(getArray<char>(in));
45 case s64: return common::cast<To, intl>(getArray<intl>(in));
46 case u64: return common::cast<To, uintl>(getArray<uintl>(in));
47 case s16: return common::cast<To, short>(getArray<short>(in));
48 case u16: return common::cast<To, ushort>(getArray<ushort>(in));
49 case f16:
50 return common::cast<To, common::half>(getArray<common::half>(in));
51 default: TYPE_ERROR(1, info.getType());
52 }
53}
54
55template detail::Array<float> castArray(const af_array &in);
56template detail::Array<double> castArray(const af_array &in);

Callers

nothing calls this directly

Calls 1

getTypeMethod · 0.45

Tested by

no test coverage detected