# Copyright (c) Microsoft Corporation. # Licensed under the MIT License. cases: - note: basic data: {} modules: - | package test import future.keywords r1 = value { value = p + a[0] # p and a are defined later q = p # q depends on p; p depends on q q = t[0] # t is defined at end a = [ t[i] | # a uses a compr which depends on t i := 1 ] t = [8, 4] } query: data.test want_result: r1: 12 - note: input-dependency data: {} modules: - | package test default p = null p = input.p q { input.p true } r1 = s { # Dependency on null input before erroring stmt. input.p s = concat("", ["", p]) } #r2 = s { # s = concat("", ["", p]) # # Dependency on null input after erroring stmt. # # This doesn't reordered before assignment to s # # since s also has no other local var dependency. # # The written order of statements is preserved. # input.p #} r3 = s { # Indirect dependency on null input before erroring stmt. q s = concat("", ["", p]) } #r3 = s { # s := concat("", ["", p]) # # Indirect dependency on null input after erroring stmt. # # This doesn't reordered before assignment to s # # since s also has no other local var dependency. # # The written order of statements is preserved. # input.p # q #} query: data.test want_result: p: null