mirror of
https://github.com/CatalaLang/catala.git
synced 2024-09-20 00:41:05 +03:00
test(clerk): remove irelevant tests
This commit is contained in:
parent
3a6450b42f
commit
ee6eb717c1
2
Makefile
2
Makefile
@ -260,7 +260,7 @@ test_clerk:
|
||||
|
||||
#> tests : Run interpreter tests
|
||||
tests: .FORCE
|
||||
@$(CLERK) test tests examples $(BUILD_SYSTEM_DIR)/tests
|
||||
@$(CLERK) test tests examples # $(BUILD_SYSTEM_DIR)/tests
|
||||
|
||||
#> tests_ocaml : Run OCaml unit tests for the Catala-generated code
|
||||
tests_ocaml: run_french_law_library_ocaml_tests
|
||||
|
@ -1,26 +0,0 @@
|
||||
## Article
|
||||
|
||||
```catala
|
||||
declaration structure S:
|
||||
data id content integer
|
||||
data income content money
|
||||
|
||||
declaration scope A:
|
||||
context output x content collection S
|
||||
|
||||
scope A:
|
||||
definition x equals [
|
||||
S { -- id: 0 -- income: $0 };
|
||||
S { -- id: 1 -- income: $4 +$ $5 };
|
||||
S { -- id: 2 -- income: $8 *$ 0.65 }
|
||||
]
|
||||
|
||||
declaration scope B:
|
||||
a scope A
|
||||
output argmax content S
|
||||
output argmin content S
|
||||
|
||||
scope B:
|
||||
definition argmax equals content maximum money initial S { -- id: -1 --income: $0 } for m in a.x of (m.income *$ 2.0)
|
||||
definition argmin equals content minimum money initial S { -- id: -1 --income: $20 } for m in a.x of (m.income +$ $5)
|
||||
```
|
@ -1,4 +0,0 @@
|
||||
[RESULT] Computation successful! Results:
|
||||
[RESULT] x =
|
||||
[S {"id"= 0; "income"= $0.00}; S {"id"= 1; "income"= $9.00};
|
||||
S {"id"= 2; "income"= $5.20}]
|
@ -1,168 +0,0 @@
|
||||
(** This file has been generated by the Catala compiler, do not edit! *)
|
||||
|
||||
open Runtime
|
||||
|
||||
[@@@ocaml.warning "-4-26-27-32-41-42"]
|
||||
|
||||
type s = {
|
||||
id: integer;
|
||||
income: money;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type a_out = {
|
||||
x_out: s array;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type a_in = {
|
||||
x_in: unit -> (s array);
|
||||
}
|
||||
|
||||
|
||||
|
||||
type b_out = {
|
||||
argmax_out: s;
|
||||
argmin_out: s;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type b_in = unit
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
let a =
|
||||
fun (a_in: a_in) -> let x_ : unit -> (s array) = (a_in.x_in)
|
||||
in
|
||||
let x_ : s array =
|
||||
((try
|
||||
(handle_default ([|(fun (_: _) -> x_ ())|]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
[|{id = (integer_of_string "0");
|
||||
income =
|
||||
(money_of_cents_string "0")};
|
||||
{id = (integer_of_string "1");
|
||||
income =
|
||||
((money_of_cents_string
|
||||
"400") +$
|
||||
(money_of_cents_string
|
||||
"500"))};
|
||||
{id = (integer_of_string "2");
|
||||
income =
|
||||
((money_of_cents_string
|
||||
"800") *$
|
||||
(decimal_of_string "0.65"))}|]))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError))))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=9; start_column=19; end_line=9; end_column=20;
|
||||
law_headings=["Article"]})))) in
|
||||
{x_out = x_}
|
||||
|
||||
let b =
|
||||
fun (b_in: b_in) ->
|
||||
let a_dot_x_ : unit -> (s array) = (fun (_: unit) -> (raise EmptyError))
|
||||
in
|
||||
let result_ : a_out = (((a) {x_in = a_dot_x_}))
|
||||
in
|
||||
let a_dot_x_ : s array = (result_.x_out)
|
||||
in
|
||||
let argmin_ : s =
|
||||
((try
|
||||
(handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
let predicate_ : _ =
|
||||
(fun (m_: _) ->
|
||||
(m_.income) +$
|
||||
(money_of_cents_string "500"))
|
||||
in
|
||||
(Array.fold_left
|
||||
(fun (acc_: _) (item_: _) ->
|
||||
if
|
||||
((predicate_ acc_) <$
|
||||
(predicate_ item_)) then
|
||||
acc_ else item_)
|
||||
{id = (~-! (integer_of_string "1"));
|
||||
income = (money_of_cents_string
|
||||
"2000")} a_dot_x_)))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError)))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=21; start_column=11; end_line=21; end_column=17;
|
||||
law_headings=["Article"]}))))
|
||||
in
|
||||
let argmax_ : s =
|
||||
((try
|
||||
(handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
let predicate_ : _ =
|
||||
(fun (m_: _) ->
|
||||
(m_.income) *$
|
||||
(decimal_of_string "2."))
|
||||
in
|
||||
(Array.fold_left
|
||||
(fun (acc_: _) (item_: _) ->
|
||||
if
|
||||
((predicate_ acc_) >$
|
||||
(predicate_ item_)) then
|
||||
acc_ else item_)
|
||||
{id = (~-! (integer_of_string "1"));
|
||||
income = (money_of_cents_string
|
||||
"0")} a_dot_x_)))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError)))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=20; start_column=11; end_line=20; end_column=17;
|
||||
law_headings=["Article"]}))))
|
||||
in
|
||||
{argmax_out = argmax_; argmin_out = argmin_}
|
@ -1,3 +0,0 @@
|
||||
[RESULT] Computation successful! Results:
|
||||
[RESULT] argmax = S {"id"= 1; "income"= $9.00}
|
||||
[RESULT] argmin = S {"id"= 0; "income"= $0.00}
|
@ -1,118 +0,0 @@
|
||||
let A =
|
||||
λ (A_in: A_in{"x_in": unit → array S{"id": integer; "income": money}}) →
|
||||
let x : unit → array S{"id": integer; "income": money} = A_in."x_in" in
|
||||
let x : array S{"id": integer; "income": money} =
|
||||
try
|
||||
handle_default [λ (_: any) → x ()] (λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default [] (λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default [] (λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
[S {"id": 0, "income": $0.00};
|
||||
S {"id": 1, "income": $4.00 +$ $5.00};
|
||||
S {"id": 2, "income": $8.00 *$ 0.65}])]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))]
|
||||
(λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default [] (λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError)]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))) with EmptyError ->
|
||||
raise NoValueProvided in
|
||||
A_out {"x_out": x}
|
||||
|
||||
let B =
|
||||
λ (B_in: B_in{}) →
|
||||
let a.x :
|
||||
unit →
|
||||
array S{"id": integer; "income": money} =
|
||||
λ (_: unit) → raise EmptyError in
|
||||
let result :
|
||||
A_out{"x_out":
|
||||
array S{"id": integer; "income": money}} =
|
||||
A (A_in {"x_in": a.x}) in
|
||||
let a.x : array S{"id": integer; "income": money}
|
||||
= result."x_out" in
|
||||
let argmin : S{"id": integer; "income": money} =
|
||||
try
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default [] (λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default []
|
||||
(λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
let predicate : any =
|
||||
λ (m: any) →
|
||||
m."income" +$ $5.00
|
||||
in
|
||||
fold
|
||||
(λ (acc: any)
|
||||
(item: any) →
|
||||
if
|
||||
predicate acc <$
|
||||
predicate item
|
||||
then acc else item)
|
||||
(S {"id": - 1,
|
||||
"income": $20.00})
|
||||
a.x)]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))]
|
||||
(λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default []
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError)]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))
|
||||
with EmptyError -> raise NoValueProvided in
|
||||
let argmax : S{"id": integer; "income": money} =
|
||||
try
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default [] (λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default []
|
||||
(λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
let predicate : any =
|
||||
λ (m: any) →
|
||||
m."income" *$ 2. in
|
||||
fold
|
||||
(λ (acc: any)
|
||||
(item: any) →
|
||||
if
|
||||
predicate acc >$
|
||||
predicate item
|
||||
then acc else item)
|
||||
(S {"id": - 1,
|
||||
"income": $0.00})
|
||||
a.x)]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))]
|
||||
(λ (_: any) → true)
|
||||
(λ (_: any) →
|
||||
handle_default
|
||||
[λ (_: any) →
|
||||
handle_default []
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError)]
|
||||
(λ (_: any) → false)
|
||||
(λ (_: any) → raise EmptyError))
|
||||
with EmptyError -> raise NoValueProvided in
|
||||
B_out {"argmax_out": argmax,
|
||||
"argmin_out": argmin}
|
@ -1,168 +0,0 @@
|
||||
(** This file has been generated by the Catala compiler, do not edit! *)
|
||||
|
||||
open Runtime
|
||||
|
||||
[@@@ocaml.warning "-4-26-27-32-41-42"]
|
||||
|
||||
type s = {
|
||||
id: integer;
|
||||
income: money;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type a_out = {
|
||||
x_out: s array;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type a_in = {
|
||||
x_in: unit -> (s array);
|
||||
}
|
||||
|
||||
|
||||
|
||||
type b_out = {
|
||||
argmax_out: s;
|
||||
argmin_out: s;
|
||||
}
|
||||
|
||||
|
||||
|
||||
type b_in = unit
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
let a =
|
||||
fun (a_in: a_in) -> let x_ : unit -> (s array) = (a_in.x_in)
|
||||
in
|
||||
let x_ : s array =
|
||||
((try
|
||||
(handle_default ([|(fun (_: _) -> x_ ())|]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
[|{id = (integer_of_string "0");
|
||||
income =
|
||||
(money_of_cents_string "0")};
|
||||
{id = (integer_of_string "1");
|
||||
income =
|
||||
((money_of_cents_string
|
||||
"400") +$
|
||||
(money_of_cents_string
|
||||
"500"))};
|
||||
{id = (integer_of_string "2");
|
||||
income =
|
||||
((money_of_cents_string
|
||||
"800") *$
|
||||
(decimal_of_string "0.65"))}|]))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError))))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=9; start_column=19; end_line=9; end_column=20;
|
||||
law_headings=["Article"]})))) in
|
||||
{x_out = x_}
|
||||
|
||||
let b =
|
||||
fun (b_in: b_in) ->
|
||||
let a_dot_x_ : unit -> (s array) = (fun (_: unit) -> (raise EmptyError))
|
||||
in
|
||||
let result_ : a_out = (((a) {x_in = a_dot_x_}))
|
||||
in
|
||||
let a_dot_x_ : s array = (result_.x_out)
|
||||
in
|
||||
let argmin_ : s =
|
||||
((try
|
||||
(handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
let predicate_ : _ =
|
||||
(fun (m_: _) ->
|
||||
(m_.income) +$
|
||||
(money_of_cents_string "500"))
|
||||
in
|
||||
(Array.fold_left
|
||||
(fun (acc_: _) (item_: _) ->
|
||||
if
|
||||
((predicate_ acc_) <$
|
||||
(predicate_ item_)) then
|
||||
acc_ else item_)
|
||||
{id = (~-! (integer_of_string "1"));
|
||||
income = (money_of_cents_string
|
||||
"2000")} a_dot_x_)))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError)))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=21; start_column=11; end_line=21; end_column=17;
|
||||
law_headings=["Article"]}))))
|
||||
in
|
||||
let argmax_ : s =
|
||||
((try
|
||||
(handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
let predicate_ : _ =
|
||||
(fun (m_: _) ->
|
||||
(m_.income) *$
|
||||
(decimal_of_string "2."))
|
||||
in
|
||||
(Array.fold_left
|
||||
(fun (acc_: _) (item_: _) ->
|
||||
if
|
||||
((predicate_ acc_) >$
|
||||
(predicate_ item_)) then
|
||||
acc_ else item_)
|
||||
{id = (~-! (integer_of_string "1"));
|
||||
income = (money_of_cents_string
|
||||
"0")} a_dot_x_)))|])
|
||||
(fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError)))|])
|
||||
(fun (_: _) -> true)
|
||||
(fun (_: _) ->
|
||||
handle_default
|
||||
([|(fun (_: _) ->
|
||||
handle_default ([||]) (fun (_: _) -> false)
|
||||
(fun (_: _) -> raise EmptyError))|])
|
||||
(fun (_: _) -> false) (fun (_: _) -> raise EmptyError)))
|
||||
with EmptyError -> (raise (NoValueProvided
|
||||
{filename = "build_system/tests/test_array/good/aggregation_2.catala_en";
|
||||
start_line=20; start_column=11; end_line=20; end_column=17;
|
||||
law_headings=["Article"]}))))
|
||||
in
|
||||
{argmax_out = argmax_; argmin_out = argmin_}
|
@ -1,258 +0,0 @@
|
||||
# This file has been generated by the Catala compiler, do not edit!
|
||||
|
||||
from .catala import *
|
||||
from typing import Any, List, Callable, Tuple
|
||||
from enum import Enum
|
||||
|
||||
class S:
|
||||
def __init__(self, id: Integer, income: Money) -> None:
|
||||
self.id = id
|
||||
self.income = income
|
||||
|
||||
def __eq__(self, other: object) -> bool:
|
||||
if isinstance(other, S):
|
||||
return (self.id == other.id and self.income == other.income)
|
||||
else:
|
||||
return False
|
||||
|
||||
def __ne__(self, other: object) -> bool:
|
||||
return not (self == other)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return "S(id={},income={})".format(self.id, self.income)
|
||||
|
||||
class AOut:
|
||||
def __init__(self, x_out: List[S]) -> None:
|
||||
self.x_out = x_out
|
||||
|
||||
def __eq__(self, other: object) -> bool:
|
||||
if isinstance(other, AOut):
|
||||
return (self.x_out == other.x_out)
|
||||
else:
|
||||
return False
|
||||
|
||||
def __ne__(self, other: object) -> bool:
|
||||
return not (self == other)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return "AOut(x_out={})".format(self.x_out)
|
||||
|
||||
class AIn:
|
||||
def __init__(self, x_in: Callable[[Unit], (List[S])]) -> None:
|
||||
self.x_in = x_in
|
||||
|
||||
def __eq__(self, other: object) -> bool:
|
||||
if isinstance(other, AIn):
|
||||
return (self.x_in == other.x_in)
|
||||
else:
|
||||
return False
|
||||
|
||||
def __ne__(self, other: object) -> bool:
|
||||
return not (self == other)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return "AIn(x_in={})".format(self.x_in)
|
||||
|
||||
class BOut:
|
||||
def __init__(self, argmax_out: S, argmin_out: S) -> None:
|
||||
self.argmax_out = argmax_out
|
||||
self.argmin_out = argmin_out
|
||||
|
||||
def __eq__(self, other: object) -> bool:
|
||||
if isinstance(other, BOut):
|
||||
return (self.argmax_out == other.argmax_out and
|
||||
self.argmin_out == other.argmin_out)
|
||||
else:
|
||||
return False
|
||||
|
||||
def __ne__(self, other: object) -> bool:
|
||||
return not (self == other)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return "BOut(argmax_out={},argmin_out={})".format(self.argmax_out,
|
||||
self.argmin_out)
|
||||
|
||||
class BIn:
|
||||
def __init__(self, ) -> None:
|
||||
pass
|
||||
|
||||
def __eq__(self, other: object) -> bool:
|
||||
if isinstance(other, BIn):
|
||||
return (True)
|
||||
else:
|
||||
return False
|
||||
|
||||
def __ne__(self, other: object) -> bool:
|
||||
return not (self == other)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return "BIn()".format()
|
||||
|
||||
|
||||
|
||||
def a(a_in_1:AIn):
|
||||
x_2 = a_in_1.x_in
|
||||
try:
|
||||
def local_var_5(_:Any):
|
||||
return x_2(Unit())
|
||||
def local_var_7(_:Any):
|
||||
return True
|
||||
def local_var_9(_:Any):
|
||||
def local_var_11(_:Any):
|
||||
def local_var_13(_:Any):
|
||||
return True
|
||||
def local_var_15(_:Any):
|
||||
def local_var_17(_:Any):
|
||||
def local_var_19(_:Any):
|
||||
return True
|
||||
def local_var_21(_:Any):
|
||||
return [S(id = integer_of_string("0"),
|
||||
income = money_of_cents_string("0")),
|
||||
S(id = integer_of_string("1"),
|
||||
income = (money_of_cents_string("400") +
|
||||
money_of_cents_string("500"))),
|
||||
S(id = integer_of_string("2"),
|
||||
income = (money_of_cents_string("800") *
|
||||
decimal_of_string("0.65")))]
|
||||
return handle_default([], local_var_19, local_var_21)
|
||||
def local_var_23(_:Any):
|
||||
return False
|
||||
def local_var_25(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_17], local_var_23,
|
||||
local_var_25)
|
||||
return handle_default([], local_var_13, local_var_15)
|
||||
def local_var_27(_:Any):
|
||||
return True
|
||||
def local_var_29(_:Any):
|
||||
def local_var_31(_:Any):
|
||||
def local_var_33(_:Any):
|
||||
return False
|
||||
def local_var_35(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([], local_var_33, local_var_35)
|
||||
def local_var_37(_:Any):
|
||||
return False
|
||||
def local_var_39(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_31], local_var_37,
|
||||
local_var_39)
|
||||
return handle_default([local_var_11], local_var_27, local_var_29)
|
||||
local_var_4 = handle_default([local_var_5], local_var_7, local_var_9)
|
||||
except EmptyError:
|
||||
raise NoValueProvided(SourcePosition(filename="build_system/tests/test_array/good/aggregation_2.catala_en",
|
||||
start_line=9, start_column=19, end_line=9, end_column=20,
|
||||
law_headings=["Article"]))
|
||||
x_3 = local_var_4
|
||||
return AOut(x_out = x_3)
|
||||
|
||||
def b(b_in_41:BIn):
|
||||
def local_var_43(_:Unit):
|
||||
raise EmptyError
|
||||
a_dot_x_42 = local_var_43
|
||||
result_46 = a(AIn(x_in = a_dot_x_42))
|
||||
a_dot_x_47 = result_46.x_out
|
||||
try:
|
||||
def local_var_50(_:Any):
|
||||
def local_var_52(_:Any):
|
||||
return True
|
||||
def local_var_54(_:Any):
|
||||
def local_var_56(_:Any):
|
||||
def local_var_58(_:Any):
|
||||
return True
|
||||
def local_var_60(_:Any):
|
||||
def local_var_63(m_64:Any):
|
||||
return (m_64.income +
|
||||
money_of_cents_string("500"))
|
||||
predicate_62 = local_var_63
|
||||
def local_var_65(acc_66:Any, item_67:Any):
|
||||
if (predicate_62(acc_66) <
|
||||
predicate_62(item_67)):
|
||||
return acc_66
|
||||
else:
|
||||
return item_67
|
||||
return list_fold_left(local_var_65,
|
||||
S(id = - integer_of_string("1"),
|
||||
income = money_of_cents_string("2000")),
|
||||
a_dot_x_47)
|
||||
return handle_default([], local_var_58, local_var_60)
|
||||
def local_var_68(_:Any):
|
||||
return False
|
||||
def local_var_70(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_56], local_var_68,
|
||||
local_var_70)
|
||||
return handle_default([], local_var_52, local_var_54)
|
||||
def local_var_72(_:Any):
|
||||
return True
|
||||
def local_var_74(_:Any):
|
||||
def local_var_76(_:Any):
|
||||
def local_var_78(_:Any):
|
||||
return False
|
||||
def local_var_80(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([], local_var_78, local_var_80)
|
||||
def local_var_82(_:Any):
|
||||
return False
|
||||
def local_var_84(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_76], local_var_82, local_var_84)
|
||||
local_var_49 = handle_default([local_var_50], local_var_72,
|
||||
local_var_74)
|
||||
except EmptyError:
|
||||
raise NoValueProvided(SourcePosition(filename="build_system/tests/test_array/good/aggregation_2.catala_en",
|
||||
start_line=21, start_column=11, end_line=21, end_column=17,
|
||||
law_headings=["Article"]))
|
||||
argmin_48 = local_var_49
|
||||
try:
|
||||
def local_var_88(_:Any):
|
||||
def local_var_90(_:Any):
|
||||
return True
|
||||
def local_var_92(_:Any):
|
||||
def local_var_94(_:Any):
|
||||
def local_var_96(_:Any):
|
||||
return True
|
||||
def local_var_98(_:Any):
|
||||
def local_var_101(m_102:Any):
|
||||
return (m_102.income * decimal_of_string("2."))
|
||||
predicate_100 = local_var_101
|
||||
def local_var_103(acc_104:Any, item_105:Any):
|
||||
if (predicate_100(acc_104) >
|
||||
predicate_100(item_105)):
|
||||
return acc_104
|
||||
else:
|
||||
return item_105
|
||||
return list_fold_left(local_var_103,
|
||||
S(id = - integer_of_string("1"),
|
||||
income = money_of_cents_string("0")), a_dot_x_47)
|
||||
return handle_default([], local_var_96, local_var_98)
|
||||
def local_var_106(_:Any):
|
||||
return False
|
||||
def local_var_108(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_94], local_var_106,
|
||||
local_var_108)
|
||||
return handle_default([], local_var_90, local_var_92)
|
||||
def local_var_110(_:Any):
|
||||
return True
|
||||
def local_var_112(_:Any):
|
||||
def local_var_114(_:Any):
|
||||
def local_var_116(_:Any):
|
||||
return False
|
||||
def local_var_118(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([], local_var_116, local_var_118)
|
||||
def local_var_120(_:Any):
|
||||
return False
|
||||
def local_var_122(_:Any):
|
||||
raise EmptyError
|
||||
return handle_default([local_var_114], local_var_120,
|
||||
local_var_122)
|
||||
local_var_87 = handle_default([local_var_88], local_var_110,
|
||||
local_var_112)
|
||||
except EmptyError:
|
||||
raise NoValueProvided(SourcePosition(filename="build_system/tests/test_array/good/aggregation_2.catala_en",
|
||||
start_line=20, start_column=11, end_line=20, end_column=17,
|
||||
law_headings=["Article"]))
|
||||
argmax_86 = local_var_87
|
||||
return BOut(argmax_out = argmax_86, argmin_out = argmin_48)
|
@ -1,207 +0,0 @@
|
||||
let A (A_in : A_in{"x_in": unit → array S{"id": integer; "income": money}})
|
||||
=
|
||||
decl x : unit → array S{"id": integer; "income": money};
|
||||
x = A_in_1."x_in";
|
||||
decl x : array S{"id": integer; "income": money};
|
||||
try:
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
return x_2 ();
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
return [S {"id": 0, "income": $0.00};
|
||||
S {"id": 1, "income": $4.00 +$ $5.00};
|
||||
S {"id": 2, "income": $8.00 *$ 0.65}];
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_19 local_var_21;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_17] local_var_23 local_var_25;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_13 local_var_15;
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_33 local_var_35;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_31] local_var_37 local_var_39;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_11] local_var_27 local_var_29;
|
||||
decl local_var : any;
|
||||
local_var = handle_default [local_var_5] local_var_7 local_var_9
|
||||
with EmptyError:
|
||||
raise NoValueProvided;
|
||||
decl local_var : any;
|
||||
x = local_var_4;
|
||||
return A_out {"x_out": x_3}
|
||||
|
||||
let B (B_in : B_in{}) =
|
||||
decl a.x : unit → array S{"id": integer; "income": money};
|
||||
decl local_var : any;
|
||||
let local_var (_ : unit) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
a.x = local_var_43;
|
||||
decl result : A_out{"x_out": array S{"id": integer; "income": money}};
|
||||
result = A A_in {"x_in": a.x_42};
|
||||
decl a.x : array S{"id": integer; "income": money};
|
||||
a.x = result_46."x_out";
|
||||
decl argmin : S{"id": integer; "income": money};
|
||||
try:
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl predicate : any;
|
||||
decl local_var : any;
|
||||
let local_var (m : any) =
|
||||
return m_64."income" +$ $5.00;
|
||||
predicate = local_var_63;
|
||||
let local_var (acc : any) (item : any) =
|
||||
if predicate_62 acc_66 <$ predicate_62 item_67:
|
||||
return acc_66
|
||||
else:
|
||||
return item_67;
|
||||
decl local_var : any;
|
||||
return fold local_var_65 S {"id": - 1, "income": $20.00} a.x_47;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_58 local_var_60;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_56] local_var_68 local_var_70;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_52 local_var_54;
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_78 local_var_80;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_76] local_var_82 local_var_84;
|
||||
decl local_var : any;
|
||||
local_var = handle_default [local_var_50] local_var_72 local_var_74
|
||||
with EmptyError:
|
||||
raise NoValueProvided;
|
||||
decl local_var : any;
|
||||
argmin = local_var_49;
|
||||
decl argmax : S{"id": integer; "income": money};
|
||||
try:
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl predicate : any;
|
||||
decl local_var : any;
|
||||
let local_var (m : any) =
|
||||
return m_102."income" *$ 2.;
|
||||
predicate = local_var_101;
|
||||
let local_var (acc : any) (item : any) =
|
||||
if predicate_100 acc_104 >$ predicate_100 item_105:
|
||||
return acc_104
|
||||
else:
|
||||
return item_105;
|
||||
decl local_var : any;
|
||||
return fold local_var_103 S {"id": - 1, "income": $0.00} a.x_47;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_96 local_var_98;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_94] local_var_106 local_var_108;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_90 local_var_92;
|
||||
let local_var (_ : any) =
|
||||
return true;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [] local_var_116 local_var_118;
|
||||
let local_var (_ : any) =
|
||||
return false;
|
||||
decl local_var : any;
|
||||
let local_var (_ : any) =
|
||||
raise EmptyError;
|
||||
decl local_var : any;
|
||||
return handle_default [local_var_114] local_var_120 local_var_122;
|
||||
decl local_var : any;
|
||||
local_var = handle_default [local_var_88] local_var_110 local_var_112
|
||||
with EmptyError:
|
||||
raise NoValueProvided;
|
||||
decl local_var : any;
|
||||
argmax = local_var_87;
|
||||
return B_out {"argmax_out": argmax_86, "argmin_out": argmin_48}
|
Loading…
Reference in New Issue
Block a user