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 */

SuperSimple := Rectangle {

    animate x {
        duration: 1000ms;
        easing: linear;
    }

    animate x {
//          ^error{Duplicated animation}
        duration: 1000ms;
    }

    animate y {
        nonexistent: 42;
//      ^error{Unknown property nonexistent}
    }

    animate text {
//          ^error{'text' is not a property that can be animated}
    }

    animate * { duration: 100ms; }
//          ^error{catch-all property is only allowed within transitions}

    animate background, foo { duration: 100ms; }
//                     ^error{'foo' is not a property that can be animated}

    text := Text{ animate x { duration: 1000ms; } }
    animate text.x { duration: 100ms; }
//          ^error{Can only refer to property in the current element}

}