sixtyfps-compilerlib 0.1.2

Internal SixtyFPS compiler library
Documentation
/* 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 */

TestCase := Text {
    // allow unqualified enum when we can infer the type from the property assigned to
    horizontal-alignment: right;

    callback change_alignment();
    change_alignment => {
        // allow qualified enum lookup
        self.horizontal_alignment = TextHorizontalAlignment.left;

        //typo
        self.horizontal_alignment =
            TextHorizontalAlignment.lefti;
        //                          ^error{'lefti' is not a member of the enum TextHorizontalAlignment}
    }

    vertical_alignment: TextVerticalAlignment.top.right;
    //                                            ^error{Cannot access the field 'right' of enum TextVerticalAlignment}
    Text {
        horizontal-alignment: right.foo;
        //                          ^error{Cannot access the field 'foo' of enum TextHorizontalAlignment}
        vertical_alignment: TextVerticalAlignment;
        //                  ^error{Cannot take reference to an enum}
    }

}