78 std::unique_ptr<SkSL::Type> s1 =
85 std::unique_ptr<SkSL::Type> s2 =
92 std::unique_ptr<SkSL::Type> s3 =
100 std::string_view(
"a"), context.
fTypes.
fInt.get());
101 std::unique_ptr<SkSL::Type> s4 =
108 std::unique_ptr<SkSL::Type> s5 =
114 std::unique_ptr<SkSL::Type> array1 =
120 std::unique_ptr<SkSL::Type> array2 =
177 std::unique_ptr<SkSL::Type> s1 =
184 std::unique_ptr<SkSL::Type> s2 =
190 std::string_view(
"c"), context.
fTypes.
fBool.get());
191 std::unique_ptr<SkSL::Type> s3 =
199 std::string_view(
"a"), context.
fTypes.
fInt.get());
200 std::unique_ptr<SkSL::Type> s4 =
207 std::unique_ptr<SkSL::Type> s5 =
213 std::unique_ptr<SkSL::Type> array1 =
219 std::unique_ptr<SkSL::Type> array2 =
226DEF_TEST(SkSLMemoryLayoutTest_WGSLUniform_Base, r) {
434 std::string_view(
"u"),
439 std::string_view(
"v"),
444 std::string_view(
"w"),
449 std::string_view(
"x"),
452 context,
SkSL::Position(), std::string_view(
"A"), std::move(fields));
474 std::string_view(
"a"),
479 std::string_view(
"b"),
484 std::string_view(
"c"),
489 std::string_view(
"d"),
494 std::string_view(
"e"),
499 std::string_view(
"f"),
505 std::string_view(
"g"),
510 std::string_view(
"h"),
513 context,
SkSL::Position(), std::string_view(
"B"), std::move(fields));
518DEF_TEST(SkSLMemoryLayoutTest_WGSLUniform_EnableF16, r) {
726 std::string_view(
"u"),
731 std::string_view(
"v"),
736 std::string_view(
"w"),
741 std::string_view(
"x"),
744 context,
SkSL::Position(), std::string_view(
"A"), std::move(fields));
766 std::string_view(
"a"),
771 std::string_view(
"b"),
776 std::string_view(
"c"),
781 std::string_view(
"d"),
786 std::string_view(
"e"),
791 std::string_view(
"f"),
797 std::string_view(
"g"),
802 std::string_view(
"h"),
805 context,
SkSL::Position(), std::string_view(
"B"), std::move(fields));
810DEF_TEST(SkSLMemoryLayoutTest_WGSLStorage_Base, r) {
1016 std::string_view(
"u"),
1021 std::string_view(
"v"),
1026 std::string_view(
"w"),
1031 std::string_view(
"x"),
1034 context,
SkSL::Position(), std::string_view(
"A"), std::move(fields));
1056 std::string_view(
"a"),
1061 std::string_view(
"b"),
1066 std::string_view(
"c"),
1071 std::string_view(
"d"),
1076 std::string_view(
"e"),
1081 std::string_view(
"f"),
1087 std::string_view(
"g"),
1092 std::string_view(
"h"),
1095 context,
SkSL::Position(), std::string_view(
"B"), std::move(fields));
1100DEF_TEST(SkSLMemoryLayoutTest_WGSLStorage_EnableF16, r) {
1306 std::string_view(
"u"),
1311 std::string_view(
"v"),
1316 std::string_view(
"w"),
1321 std::string_view(
"x"),
1324 context,
SkSL::Position(), std::string_view(
"A"), std::move(fields));
1346 std::string_view(
"a"),
1351 std::string_view(
"b"),
1356 std::string_view(
"c"),
1361 std::string_view(
"d"),
1366 std::string_view(
"e"),
1371 std::string_view(
"f"),
1377 std::string_view(
"g"),
1382 std::string_view(
"h"),
1385 context,
SkSL::Position(), std::string_view(
"B"), std::move(fields));
1390DEF_TEST(SkSLMemoryLayoutTest_WGSLUnsupportedTypes, r) {
1403 std::string_view(
"foo"),
1406 context,
SkSL::Position(), std::string_view(
"Test"), std::move(fields));
1430 std::string_view(
"foo"),
1433 context,
SkSL::Position(), std::string_view(
"Test"), std::move(fields));
DEF_TEST(SkSLMemoryLayoutTest_std140, r)
#define REPORTER_ASSERT(r, cond,...)
const std::unique_ptr< Type > fFloat2
const std::unique_ptr< Type > fHalf4
const std::unique_ptr< Type > fFloat4x3
const std::unique_ptr< Type > fInt4
const std::unique_ptr< Type > fHalf2x3
const std::unique_ptr< Type > fHalf2x2
const std::unique_ptr< Type > fUInt2
const std::unique_ptr< Type > fShort3
const std::unique_ptr< Type > fInt2
const std::unique_ptr< Type > fUShort
const std::unique_ptr< Type > fInt
const std::unique_ptr< Type > fHalf4x3
const std::unique_ptr< Type > fFloat3x2
const std::unique_ptr< Type > fAtomicUInt
const std::unique_ptr< Type > fFloat2x2
const std::unique_ptr< Type > fFloat3x4
const std::unique_ptr< Type > fHalf3x4
const std::unique_ptr< Type > fFloat4x4
const std::unique_ptr< Type > fShort2
const std::unique_ptr< Type > fShort
const std::unique_ptr< Type > fInt3
const std::unique_ptr< Type > fHalf2x4
const std::unique_ptr< Type > fUInt3
const std::unique_ptr< Type > fUShort4
const std::unique_ptr< Type > fFloat4
const std::unique_ptr< Type > fHalf2
const std::unique_ptr< Type > fUInt4
const std::unique_ptr< Type > fHalf3x3
const std::unique_ptr< Type > fShort4
const std::unique_ptr< Type > fBool2
const std::unique_ptr< Type > fFloat3x3
const std::unique_ptr< Type > fUShort2
const std::unique_ptr< Type > fBool3
const std::unique_ptr< Type > fHalf4x2
const std::unique_ptr< Type > fUInt
const std::unique_ptr< Type > fFloat2x3
const std::unique_ptr< Type > fUShort3
const std::unique_ptr< Type > fBool
const std::unique_ptr< Type > fHalf3
const std::unique_ptr< Type > fFloat2x4
const std::unique_ptr< Type > fFloat
const std::unique_ptr< Type > fFloat3
const std::unique_ptr< Type > fHalf
const std::unique_ptr< Type > fHalf3x2
const std::unique_ptr< Type > fHalf4x4
const std::unique_ptr< Type > fFloat4x2
const std::unique_ptr< Type > fBool4
const BuiltinTypes & fTypes
size_t size(const Type &type) const
size_t stride(const Type &type) const
size_t isSupported(const Type &type) const
size_t alignment(const Type &type) const
static std::unique_ptr< Type > MakeArrayType(const Context &context, std::string_view name, const Type &componentType, int columns)
static std::unique_ptr< Type > MakeStructType(const Context &context, Position pos, std::string_view name, skia_private::TArray< Field > fields, bool interfaceBlock=false)
T & emplace_back(Args &&... args)