Esc
Start typing to search...

Code Coverage

Test coverage report for keel-core, generated with cargo-tarpaulin.

80.9%Overall Coverage
44914Lines Covered
55539Total Lines
198Files

File Coverage

FileCoverage%Lines
src/compiler/compile/compile_ast_node.rs
High coverage: 100.0%23/23
src/compiler/compile/compile_binary.rs
High coverage: 95.2%495/520
src/compiler/compile/compile_decl.rs
High coverage: 87.5%265/303
src/compiler/compile/compile_expr.rs
High coverage: 90.3%715/792
src/compiler/compile/compile_import.rs
High coverage: 87.9%233/265
src/compiler/compile/compile_literals.rs
High coverage: 82.1%448/546
src/compiler/compile/compile_module.rs
Medium coverage: 74.1%503/679
src/compiler/compile/compile_run_file.rs
High coverage: 94.0%205/218
src/compiler/compile/compile_stmt.rs
Medium coverage: 72.6%387/533
src/compiler/compile/compile_user_module.rs
High coverage: 86.3%63/73
src/compiler/compile/patterns/case_expr.rs
High coverage: 100.0%106/106
src/compiler/compile/patterns/pattern_bindings.rs
High coverage: 88.1%391/444
src/compiler/compile/patterns/pattern_match.rs
High coverage: 93.3%456/489
src/compiler/compiler.rs
High coverage: 82.7%801/969
src/compiler/const_eval.rs
Medium coverage: 61.6%287/466
src/compiler/disassemble.rs
High coverage: 100.0%37/37
src/compiler/errors.rs
Low coverage: 54.2%64/118
src/compiler/exhaustiveness.rs
Medium coverage: 79.5%416/523
src/compiler/module_resolver.rs
High coverage: 80.1%444/554
src/compiler/or_pattern_validation.rs
Low coverage: 40.2%39/97
src/compiler/pattern_utils.rs
Low coverage: 36.7%11/30
src/compiler/register.rs
Low coverage: 40.0%6/15
src/compiler/scope.rs
Medium coverage: 70.6%516/731
src/compiler/string_interner.rs
High coverage: 100.0%16/16
src/compiler/type_inference/binary_ops.rs
Medium coverage: 62.1%172/277
src/compiler/type_inference/constraints.rs
Low coverage: 0.0%0/16
src/compiler/type_inference/dataframe.rs
Medium coverage: 77.8%630/810
src/compiler/type_inference/infer_expr.rs
Medium coverage: 73.4%550/749
src/compiler/type_inference/mod.rs
Medium coverage: 68.3%360/527
src/compiler/type_inference/patterns.rs
High coverage: 89.8%221/246
src/compiler/type_validation.rs
Low coverage: 9.4%19/203
src/errors.rs
Low coverage: 47.2%142/301
src/inspect/mod.rs
Low coverage: 17.9%65/363
src/lexer/delimiter_check.rs
High coverage: 97.4%111/114
src/lexer/error.rs
Medium coverage: 76.4%42/55
src/lexer/lexer.rs
High coverage: 96.3%595/618
src/lexer/token.rs
Low coverage: 23.5%20/85
src/lexer/token_spans.rs
High coverage: 93.7%134/143
src/parser/errors/parser_error.rs
Low coverage: 48.2%160/332
src/parser/errors/scope_error.rs
High coverage: 93.2%55/59
src/parser/errors/type_error.rs
Low coverage: 0.0%0/52
src/parser/errors/typed.rs
Medium coverage: 66.7%6/9
src/parser/indentation.rs
High coverage: 90.6%48/53
src/parser/parse_ast_node/parse_ast_node_block.rs
Medium coverage: 68.3%358/524
src/parser/parse_ast_node/parse_ast_node_comment.rs
High coverage: 100.0%66/66
src/parser/parse_ast_node/parse_ast_node_expr.rs
High coverage: 98.8%479/485
src/parser/parse_decl/mod.rs
High coverage: 100.0%12/12
src/parser/parse_decl/parse_enums.rs
High coverage: 97.7%343/351
src/parser/parse_decl/parse_import.rs
High coverage: 98.1%152/155
src/parser/parse_decl/parse_modules.rs
High coverage: 85.3%466/546
src/parser/parse_decl/parse_task.rs
High coverage: 98.4%60/61
src/parser/parse_decl/parse_type_alias.rs
High coverage: 91.7%88/96
src/parser/parse_decl/parse_types.rs
High coverage: 99.5%194/195
src/parser/parse_expr/parse_case.rs
High coverage: 98.7%76/77
src/parser/parse_expr/parse_enum_expr.rs
High coverage: 84.7%277/327
src/parser/parse_expr/parse_from_type.rs
High coverage: 100.0%10/10
src/parser/parse_expr/parse_function.rs
High coverage: 97.7%252/258
src/parser/parse_expr/parse_function_call/mod.rs
Medium coverage: 73.5%100/136
src/parser/parse_expr/parse_function_call/simple_arg.rs
High coverage: 92.8%245/264
src/parser/parse_expr/parse_idents.rs
High coverage: 100.0%15/15
src/parser/parse_expr/parse_if_else.rs
High coverage: 100.0%223/223
src/parser/parse_expr/parse_lambdas.rs
High coverage: 98.3%117/119
src/parser/parse_expr/parse_list_access.rs
High coverage: 100.0%27/27
src/parser/parse_expr/parse_lists.rs
High coverage: 97.3%73/75
src/parser/parse_expr/parse_literals.rs
High coverage: 100.0%93/93
src/parser/parse_expr/parse_maybe.rs
Medium coverage: 79.3%46/58
src/parser/parse_expr/parse_module_access.rs
High coverage: 100.0%46/46
src/parser/parse_expr/parse_patterns.rs
High coverage: 98.9%278/281
src/parser/parse_expr/parse_pipes.rs
Low coverage: 0.0%0/78
src/parser/parse_expr/parse_record_access.rs
High coverage: 100.0%71/71
src/parser/parse_expr/parse_record_update.rs
High coverage: 99.4%163/164
src/parser/parse_expr/parse_records.rs
Medium coverage: 78.7%133/169
src/parser/parse_expr/parse_result.rs
Medium coverage: 71.4%45/63
src/parser/parse_expr/parse_run_file.rs
High coverage: 98.8%80/81
src/parser/parse_expr/parse_token.rs
High coverage: 100.0%3/3
src/parser/parse_expr/parse_tuple_access.rs
High coverage: 80.0%32/40
src/parser/parse_expr/parse_tuples.rs
High coverage: 100.0%40/40
src/parser/parse_expr/parse_var.rs
High coverage: 100.0%106/106
src/parser/parse_stmt/mod.rs
High coverage: 100.0%5/5
src/parser/parse_stmt/parse_let.rs
High coverage: 100.0%134/134
src/parser/parser.rs
High coverage: 94.3%198/210
src/parser/pre_checks.rs
High coverage: 87.0%643/739
src/parser/scope/mod.rs
Medium coverage: 68.7%92/134
src/parser/scope/queries.rs
High coverage: 82.5%132/160
src/parser/scope/resolve.rs
High coverage: 93.6%117/125
src/parser/scope/types.rs
High coverage: 85.3%58/68
src/parser/span.rs
High coverage: 80.0%12/15
src/parser/symbol.rs
High coverage: 89.7%70/78
src/parser/symbol_arena.rs
Low coverage: 58.3%42/72
src/stdlib/dataframe/aggregation.rs
High coverage: 88.6%606/684
src/stdlib/dataframe/column_ops.rs
High coverage: 100.0%140/140
src/stdlib/dataframe/expr/aggregation.rs
High coverage: 100.0%48/48
src/stdlib/dataframe/expr/arithmetic.rs
High coverage: 100.0%30/30
src/stdlib/dataframe/expr/comparison.rs
High coverage: 100.0%35/35
src/stdlib/dataframe/expr/conditional.rs
Low coverage: 47.9%23/48
src/stdlib/dataframe/expr/logical.rs
Medium coverage: 71.4%10/14
src/stdlib/dataframe/expr/mod.rs
High coverage: 99.5%1478/1485
src/stdlib/dataframe/expr/null_ops.rs
High coverage: 100.0%19/19
src/stdlib/dataframe/expr/numeric_ops.rs
High coverage: 100.0%21/21
src/stdlib/dataframe/expr/primitives.rs
Medium coverage: 65.3%156/239
src/stdlib/dataframe/expr/string_ops.rs
High coverage: 95.5%85/89
src/stdlib/dataframe/expr/window.rs
High coverage: 83.6%51/61
src/stdlib/dataframe/expr_ops.rs
Medium coverage: 75.7%371/490
src/stdlib/dataframe/helpers.rs
Low coverage: 57.6%404/701
src/stdlib/dataframe/io.rs
Medium coverage: 64.5%350/543
src/stdlib/dataframe/labels.rs
High coverage: 94.9%673/709
src/stdlib/dataframe/lineage.rs
Low coverage: 48.5%408/841
src/stdlib/dataframe/metadata.rs
High coverage: 80.3%118/147
src/stdlib/dataframe/mod.rs
High coverage: 96.4%2520/2613
src/stdlib/dataframe/multi_df.rs
Medium coverage: 73.7%880/1194
src/stdlib/dataframe/row_ops.rs
High coverage: 94.6%174/184
src/stdlib/dataframe/security.rs
Medium coverage: 68.6%35/51
src/stdlib/dataframe/types.rs
Medium coverage: 72.5%200/276
src/stdlib/dataframe/window.rs
High coverage: 91.9%395/430
src/stdlib/date/mod.rs
High coverage: 93.9%601/640
src/stdlib/date/native.rs
High coverage: 94.4%234/248
src/stdlib/datetime/arithmetic.rs
High coverage: 95.5%277/290
src/stdlib/datetime/component.rs
High coverage: 95.1%77/81
src/stdlib/datetime/construct.rs
High coverage: 94.0%79/84
src/stdlib/datetime/convert.rs
High coverage: 100.0%79/79
src/stdlib/datetime/format.rs
High coverage: 100.0%25/25
src/stdlib/datetime/mod.rs
High coverage: 97.6%1118/1146
src/stdlib/datetime/parse.rs
Medium coverage: 75.4%52/69
src/stdlib/decimal/mod.rs
High coverage: 93.7%399/426
src/stdlib/decimal/native.rs
High coverage: 93.9%155/165
src/stdlib/distribution/constructors.rs
Medium coverage: 78.9%179/227
src/stdlib/distribution/helpers.rs
Medium coverage: 66.4%73/110
src/stdlib/distribution/mod.rs
High coverage: 99.0%693/700
src/stdlib/distribution/sampling.rs
High coverage: 100.0%38/38
src/stdlib/distribution/stats.rs
Medium coverage: 75.9%221/291
src/stdlib/duration/mod.rs
High coverage: 95.5%514/538
src/stdlib/duration/native.rs
High coverage: 92.3%179/194
src/stdlib/enum_helpers.rs
Low coverage: 55.8%29/52
src/stdlib/enum_module/mod.rs
Medium coverage: 64.7%55/85
src/stdlib/http/mod.rs
Medium coverage: 78.9%403/511
src/stdlib/http/native.rs
Low coverage: 54.2%166/306
src/stdlib/io/console.rs
Low coverage: 57.6%57/99
src/stdlib/io/dir.rs
High coverage: 83.2%89/107
src/stdlib/io/env.rs
High coverage: 88.9%32/36
src/stdlib/io/file.rs
High coverage: 91.2%114/125
src/stdlib/io/mod.rs
High coverage: 99.0%681/688
src/stdlib/io/path.rs
High coverage: 87.7%57/65
src/stdlib/io/process.rs
Low coverage: 0.0%0/7
src/stdlib/io/security.rs
Low coverage: 54.0%47/87
src/stdlib/json/mod.rs
High coverage: 83.7%221/264
src/stdlib/json/native.rs
High coverage: 92.7%101/109
src/stdlib/list/mod.rs
High coverage: 98.7%1002/1015
src/stdlib/list/native.rs
High coverage: 90.6%722/797
src/stdlib/math/basic.rs
Medium coverage: 66.7%80/120
src/stdlib/math/convert.rs
High coverage: 100.0%12/12
src/stdlib/math/exponential.rs
High coverage: 100.0%45/45
src/stdlib/math/integer.rs
High coverage: 96.2%25/26
src/stdlib/math/mod.rs
High coverage: 99.0%694/701
src/stdlib/math/trig.rs
High coverage: 100.0%55/55
src/stdlib/matrix/mod.rs
High coverage: 98.9%895/905
src/stdlib/matrix/native.rs
Low coverage: 56.7%1025/1809
src/stdlib/maybe/mod.rs
High coverage: 88.8%334/376
src/stdlib/mod.rs
Medium coverage: 69.7%115/165
src/stdlib/ordering/mod.rs
High coverage: 80.6%29/36
src/stdlib/result/mod.rs
High coverage: 90.3%437/484
src/stdlib/string/access.rs
High coverage: 100.0%12/12
src/stdlib/string/convert.rs
Medium coverage: 79.3%23/29
src/stdlib/string/inspect.rs
High coverage: 100.0%29/29
src/stdlib/string/mod.rs
High coverage: 98.9%628/635
src/stdlib/string/split_join.rs
Medium coverage: 74.6%85/114
src/stdlib/string/transform.rs
High coverage: 93.2%82/88
src/stdlib/table/helpers.rs
Medium coverage: 62.1%113/182
src/stdlib/table/materialize.rs
High coverage: 90.0%225/250
src/stdlib/table/mod.rs
High coverage: 98.7%533/540
src/stdlib/table/native_fns.rs
High coverage: 99.1%221/223
src/stdlib/table/render.rs
High coverage: 82.6%300/363
src/stdlib/table/types.rs
High coverage: 100.0%33/33
src/stdlib/time/mod.rs
High coverage: 90.5%550/608
src/stdlib/time/native.rs
High coverage: 88.6%217/245
src/stdlib/type_extractors.rs
Low coverage: 38.8%31/80
src/stdlib/value_label/mod.rs
High coverage: 90.6%259/286
src/stdlib/value_label/native.rs
High coverage: 100.0%72/72
src/stdlib/value_label_set/mod.rs
High coverage: 96.2%481/500
src/stdlib/value_label_set/native.rs
High coverage: 81.3%226/278
src/types.rs
High coverage: 88.0%265/301
src/utils/error_hints.rs
Low coverage: 0.0%0/6
src/utils/fuzzy_match.rs
Medium coverage: 78.6%77/98
src/utils/indentation.rs
High coverage: 100.0%5/5
src/utils/macros.rs
Low coverage: 0.0%0/1
src/utils/parse_failure.rs
Low coverage: 0.0%0/67
src/utils/tracing.rs
Low coverage: 0.0%0/22
src/vm/errors.rs
Low coverage: 58.3%123/211
src/vm/handlers/vm_arithmetic.rs
Low coverage: 47.4%392/827
src/vm/handlers/vm_comparison.rs
Low coverage: 47.5%162/341
src/vm/handlers/vm_control_flow.rs
Medium coverage: 70.2%240/342
src/vm/handlers/vm_data_structures.rs
Low coverage: 59.1%204/345
src/vm/handlers/vm_memory.rs
High coverage: 90.2%46/51
src/vm/values/mime_format.rs
Low coverage: 0.0%0/291
src/vm/values/output.rs
Low coverage: 55.0%342/622
src/vm/values/register.rs
Low coverage: 42.9%70/163
src/vm/vm.rs
Low coverage: 58.6%363/619
src/vm/vm_core.rs
Low coverage: 24.8%89/359
src/vm/vm_heap.rs
High coverage: 90.4%142/157