slint/internal/compiler/tests/syntax/expressions/minmax.slint
2023-06-16 10:55:08 +02:00

32 lines
1.3 KiB
Text

// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.0 OR LicenseRef-Slint-commercial
global Plop := {
property <int> x: max;
// ^error{Builtin function must be called}
}
export SuperSimple := Rectangle {
property <int> a: max + max() + max(45, "hello");
// ^error{Builtin function must be called}
// ^^error{Needs at least one argument}
// ^^^error{Cannot convert string to float}
property <length> b: max(41px, 41phx);
property <string> c: max("a", "b");
// ^error{Invalid argument type}
property <int> d: min + min() + min(45, "hello");
// ^error{Builtin function must be called}
// ^^error{Needs at least one argument}
// ^^^error{Cannot convert string to float}
property <length> e: min(41px, 41phx);
property <string> f: min("a", "b");
// ^error{Invalid argument type}
property <int> g: min(42, 42, 42cm);
// ^error{Cannot convert length to float}
property <int> h: min(42, 42 + 1) + max(1px , 2phx);
// ^error{Cannot convert float to length}
}