slint/sixtyfps_compiler/tests/syntax/lookup/global.60
2021-07-02 15:55:54 +02:00

45 lines
1.2 KiB
Text

/* LICENSE BEGIN
This file is part of the SixtyFPS Project -- https://sixtyfps.io
Copyright (c) 2021 Olivier Goffart <olivier.goffart@sixtyfps.io>
Copyright (c) 2021 Simon Hausmann <simon.hausmann@sixtyfps.io>
SPDX-License-Identifier: GPL-3.0-only
This file is also available under commercial licensing terms.
Please contact info@sixtyfps.io for more information.
LICENSE END */
global MyGlobal := {
property<length> custom_prop;
property<color> color_prop;
color_prop: red;
}
SomeComp := Rectangle {
property<length> foo;
}
global my_lowercase := {
property <int> glob;
}
X := Rectangle {
x: MyGlobal.custom_prop;
background: MyGlobal.blue;
// ^error{'MyGlobal' does not have a property 'blue'}
y: SomeComp.foo;
// ^error{Cannot access id 'SomeComp'}
my_lowercase := Rectangle {
}
property <int> my_lowercase: 45;
property<brush> xxx: my_lowercase.background;
property<int> yyy: my_lowercase.glob; // error because this is not the global, but the local element
// ^error{Element 'Rectangle' does not have a property 'glob'}
property<int> zzz: self.my_lowercase;
}