├── .cargo
└── config.toml
├── .gitattributes
├── .github
├── pull_request_template.md
└── workflows
│ ├── release.yml
│ ├── site.yml
│ └── test.yml
├── .gitignore
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── Cargo.lock
├── Cargo.toml
├── LICENSE.txt
├── README.md
├── bench_content
└── download_content.sh
├── benches
├── bench_utils.rs
├── parse_bench.rs
└── process_bench.rs
├── scripts
├── install-lua.sh
└── test-commands.lua
├── site
├── .babelrc
├── .eslintignore
├── .gitignore
├── .prettierignore
├── .prettierrc
├── LICENSE
├── README.md
├── content
│ ├── docs
│ │ ├── bundle
│ │ │ └── index.md
│ │ ├── config
│ │ │ └── index.md
│ │ ├── generators
│ │ │ └── index.md
│ │ ├── getting-started
│ │ │ └── index.md
│ │ ├── installation
│ │ │ └── index.md
│ │ ├── path-require-mode
│ │ │ └── index.md
│ │ ├── roblox-require-mode
│ │ │ └── index.md
│ │ ├── rules-reference
│ │ │ └── index.md
│ │ └── rules
│ │ │ └── index.md
│ └── rules
│ │ ├── append_text_comment.md
│ │ ├── compute_expression.md
│ │ ├── convert_index_to_field.md
│ │ ├── convert_local_function_to_assign.md
│ │ ├── convert_require.md
│ │ ├── filter_after_early_return.md
│ │ ├── group_local_assignment.md
│ │ ├── inject_global_value.md
│ │ ├── remove_assertions.md
│ │ ├── remove_comments.md
│ │ ├── remove_compound_assignment.md
│ │ ├── remove_continue.md
│ │ ├── remove_debug_profiling.md
│ │ ├── remove_empty_do.md
│ │ ├── remove_floor_division.md
│ │ ├── remove_function_call_parens.md
│ │ ├── remove_if_expression.md
│ │ ├── remove_interpolated_string.md
│ │ ├── remove_method_definition.md
│ │ ├── remove_nil_declaration.md
│ │ ├── remove_spaces.md
│ │ ├── remove_types.md
│ │ ├── remove_unused_if_branch.md
│ │ ├── remove_unused_variable.md
│ │ ├── remove_unused_while.md
│ │ └── rename_variables.md
├── darklua-wasm
│ ├── .gitignore
│ ├── Cargo.toml
│ ├── LICENSE
│ ├── README.md
│ ├── javascript-tests
│ │ ├── .gitignore
│ │ ├── darklua_wasm.spec.js
│ │ ├── package-lock.json
│ │ └── package.json
│ ├── src
│ │ ├── lib.rs
│ │ └── utils.rs
│ └── tests
│ │ └── web.rs
├── gatsby-browser.js
├── gatsby-config.js
├── gatsby-node.js
├── gatsby-ssr.js
├── package-lock.json
├── package.json
├── src
│ ├── components
│ │ ├── ViewStateLink.js
│ │ ├── app-event-context.js
│ │ ├── compare-code.js
│ │ ├── darklua-config-provider.js
│ │ ├── darklua-provider.js
│ │ ├── docs-page-layout.js
│ │ ├── documentation-nav.js
│ │ ├── editor-providers.js
│ │ ├── footer.js
│ │ ├── layout.js
│ │ ├── loading-editor-providers.js
│ │ ├── location-context.js
│ │ ├── markdown-renderer.js
│ │ ├── monaco-container.js
│ │ ├── nav-bar.js
│ │ ├── new-tab-link.js
│ │ ├── rule-configuration
│ │ │ ├── index.js
│ │ │ ├── text-rule-editor.js
│ │ │ └── ui-rule-editor.js
│ │ ├── rule-reference.js
│ │ ├── seo.js
│ │ ├── theme-provider
│ │ │ ├── dark.js
│ │ │ ├── index.js
│ │ │ └── light.js
│ │ └── theme-switch.js
│ ├── hooks
│ │ ├── useCodePreview.js
│ │ ├── useDarkluaConfigSchema.js
│ │ ├── useLocalStorage.js
│ │ ├── useMonacoEditor.js
│ │ ├── usePrism.js
│ │ └── useThemeMode.js
│ ├── images
│ │ └── darklua-icon.png
│ ├── normalize.css
│ ├── pages
│ │ ├── 404.js
│ │ ├── docs.js
│ │ ├── index.js
│ │ └── try-it.js
│ ├── style.css
│ └── templates
│ │ ├── docs-page.js
│ │ └── rule-docs-page.js
└── static
│ ├── favicon.ico
│ └── robots.txt
├── src
├── ast_converter.rs
├── bin.rs
├── cli
│ ├── convert.rs
│ ├── error.rs
│ ├── minify.rs
│ ├── mod.rs
│ ├── process.rs
│ └── utils
│ │ ├── file_watcher.rs
│ │ └── mod.rs
├── frontend
│ ├── configuration.rs
│ ├── error.rs
│ ├── mod.rs
│ ├── options.rs
│ ├── resources.rs
│ ├── utils
│ │ └── mod.rs
│ ├── work_cache.rs
│ ├── work_item.rs
│ ├── worker.rs
│ └── worker_tree.rs
├── generator
│ ├── dense.rs
│ ├── mod.rs
│ ├── readable.rs
│ ├── snapshots
│ │ ├── darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_empty_tuple.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_tuple_with_one_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_tuple_with_two_values.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__assign__dense_assign_two_variables_with_one_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__assign__dense_assign_two_variables_with_two_values.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__assign__dense_assign_variable_with_one_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__binary__dense_binary_true_and_false.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__binary__dense_binary_true_equal_false.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__binary__dense_binary_type_cast_break_type_parameters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__binary__dense_binary_wrap_left_to_break_type_field_parameters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__binary__dense_binary_wrap_left_to_break_type_name_parameters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__block__dense_block_ambiguous_function_call_from_assign.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__block__dense_block_ambiguous_function_call_from_compound_assign.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__block__dense_block_ambiguous_function_call_from_function_call.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__block__dense_block_ambiguous_function_call_from_local_assign.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__block__dense_block_ambiguous_function_call_from_repeat.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__compound_assign_statement__dense_compound_assign_statement_increment_var_by_one.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__do_statement__dense_do_statement_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__do_statement__dense_do_statement_nested_do.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__expression__dense_expression_false_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__expression__dense_expression_nil_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__expression__dense_expression_true_in_parenthese.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__expression__dense_expression_true_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__expression__dense_expression_variable_arguments.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__field__dense_field_identifier_ending_with_number_prefix.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__field__dense_field_identifier_prefix.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty_variadic.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty_variadic_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_expr__dense_function_expr_empty_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_variadic_typed_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_variadic_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_field.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_method.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_name_ending_with_number_with_field.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_string_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_two_typed_parameters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_variadic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__function_statement__dense_function_statement_empty_with_void_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__generic_for__dense_generic_for_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__generic_for__dense_generic_for_empty_with_two_typed_vars.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__generic_for__dense_generic_for_empty_with_typed_var.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__if_statement__dense_if_statement_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__if_statement__dense_if_statement_empty_with_empty_else.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__if_statement__dense_if_statement_empty_with_empty_multiple_branch.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__index__dense_index_identifier_prefix_with_identifier_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_only_letters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_backticks.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_empty_table.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_empty_table_in_type_cast.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__interpolated_string__dense_interpolated_string_with_true_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__intersection_type__dense_intersection_type_single_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__intersection_type__dense_intersection_type_two_types.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__intersection_type__dense_intersection_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_break_statement.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_continue_statement.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_return_one_expression.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_return_parentheses.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_return_two_expressions.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__last__dense_last_return_without_values.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_foo_and_bar_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_foo_and_bar_unassigned.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_foo_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_foo_unassigned.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_typed_generic_var_break_equal_sign.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_var_assign_to_false.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_variadic.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_two_parameters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_binary_0b10101.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_0_005.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_0_5.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_1.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_100_25.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_123.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_1_2345e50.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_1_2345e_minus50.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_2000_05.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_4_6982573308436185e159.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_nan.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_negative_infinity.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_positive_infinity.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__number__dense_number_number_thousand.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_typed_with_step.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_typed_without_step.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_with_step.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_without_step.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__prefix__dense_prefix_identifier.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__prefix__dense_prefix_identifier_in_parenthese.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__repeat__dense_repeat_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__string__dense_string_only_letters.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__string__dense_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__string__dense_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__string__dense_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_empty.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_list_with_single_value.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_list_with_two_values.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_mixed_table.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_with_field_entry.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__table__dense_table_with_index_entry.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_callback_with_variadic_type_is_generic_pack.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_callback_with_variadic_type_is_string.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_exported_string_alias.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_array.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_array_with_default.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_string_alias.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_indexer_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_one_property.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_one_property_and_indexer_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_type_field.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_type_field_with_name_ending_with_number.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__unary__dense_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__unary__dense_unary_not_true.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__unary__dense_unary_two_unary_minus_breaks_between_them.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__unary__dense_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_single_type.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_two_types.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__dense__snapshots__while_statement__dense_while_statement_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_empty_tuple.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_tuple_with_one_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_tuple_with_two_values.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__assign__readable_assign_two_variables_with_one_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__assign__readable_assign_two_variables_with_two_values.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__assign__readable_assign_variable_with_one_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__binary__readable_binary_true_and_false.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__binary__readable_binary_true_equal_false.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__binary__readable_binary_type_cast_break_type_parameters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__binary__readable_binary_wrap_left_to_break_type_field_parameters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__binary__readable_binary_wrap_left_to_break_type_name_parameters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_assign.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_compound_assign.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_function_call.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_local_assign.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_repeat.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__compound_assign_statement__readable_compound_assign_statement_increment_var_by_one.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__do_statement__readable_do_statement_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__do_statement__readable_do_statement_nested_do.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__expression__readable_expression_false_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__expression__readable_expression_nil_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__expression__readable_expression_true_in_parenthese.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__expression__readable_expression_true_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__expression__readable_expression_variable_arguments.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__field__readable_field_identifier_ending_with_number_prefix.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__field__readable_field_identifier_prefix.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_variadic_typed_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_variadic_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_field.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_method.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_name_ending_with_number_with_field.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_string_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_two_typed_parameters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_variadic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_void_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty_with_two_typed_vars.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty_with_typed_var.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty_with_empty_else.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty_with_empty_multiple_branch.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__index__readable_index_identifier_prefix_with_identifier_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_only_letters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_backticks.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_empty_table.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_empty_table_in_type_cast.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_true_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_single_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_two_types.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_break_statement.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_continue_statement.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_return_one_expression.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_return_parentheses.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_return_two_expressions.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__last__readable_last_return_without_values.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_and_bar_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_and_bar_unassigned.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_unassigned.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_typed_generic_var_break_equal_sign.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_var_assign_to_false.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_variadic.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_two_parameters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_binary_0b10101.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_0_005.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_0_5.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_1.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_100_25.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_123.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_1_2345e50.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_1_2345e_minus50.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_2000_05.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_4_6982573308436185e159.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_nan.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_negative_infinity.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_positive_infinity.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__number__readable_number_number_thousand.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_typed_with_step.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_typed_without_step.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_with_step.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_without_step.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__prefix__readable_prefix_identifier.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__prefix__readable_prefix_identifier_in_parenthese.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__repeat__readable_repeat_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__string__readable_string_only_letters.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__string__readable_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__string__readable_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__string__readable_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_empty.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_list_with_single_value.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_list_with_two_values.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_mixed_table.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_with_field_entry.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__table__readable_table_with_index_entry.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_callback_with_variadic_type_is_generic_pack.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_callback_with_variadic_type_is_string.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_exported_string_alias.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_array.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_array_with_default.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_string_alias.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_indexer_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_one_property.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_one_property_and_indexer_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_type_field.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_type_field_with_name_ending_with_number.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__unary__readable_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__unary__readable_unary_not_true.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__unary__readable_unary_two_unary_minus_breaks_between_them.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__unary__readable_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_single_type.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_two_types.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__readable__snapshots__while_statement__readable_while_statement_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_empty_tuple.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_tuple_with_one_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_tuple_with_two_values.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_two_variables_with_one_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_two_variables_with_two_values.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_variable_with_one_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_true_and_false.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_true_equal_false.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_type_cast_break_type_parameters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_wrap_left_to_break_type_field_parameters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_wrap_left_to_break_type_name_parameters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__block__token_based_block_ambiguous_function_call_from_assign.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__block__token_based_block_ambiguous_function_call_from_compound_assign.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__block__token_based_block_ambiguous_function_call_from_function_call.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__block__token_based_block_ambiguous_function_call_from_local_assign.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__block__token_based_block_ambiguous_function_call_from_repeat.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__compound_assign_statement__token_based_compound_assign_statement_increment_var_by_one.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__do_statement__token_based_do_statement_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__do_statement__token_based_do_statement_nested_do.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__expression__token_based_expression_false_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__expression__token_based_expression_nil_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__expression__token_based_expression_true_in_parenthese.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__expression__token_based_expression_true_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__expression__token_based_expression_variable_arguments.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__field__token_based_field_identifier_ending_with_number_prefix.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__field__token_based_field_identifier_prefix.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty_variadic.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty_variadic_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_expr__token_based_function_expr_empty_with_two_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_variadic_typed_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_variadic_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_field.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_method.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_name_ending_with_number_with_field.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_one_typed_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_string_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_two_typed_parameters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_variadic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__function_statement__token_based_function_statement_empty_with_void_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__generic_for__token_based_generic_for_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__generic_for__token_based_generic_for_empty_with_two_typed_vars.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__generic_for__token_based_generic_for_empty_with_typed_var.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__if_statement__token_based_if_statement_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__if_statement__token_based_if_statement_empty_with_empty_else.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__if_statement__token_based_if_statement_empty_with_empty_multiple_branch.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__index__token_based_index_identifier_prefix_with_identifier_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_only_letters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_backticks.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_empty_table.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_empty_table_in_type_cast.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__interpolated_string__token_based_interpolated_string_with_true_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__intersection_type__token_based_intersection_type_single_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__intersection_type__token_based_intersection_type_two_types.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__intersection_type__token_based_intersection_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_break_statement.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_continue_statement.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_return_one_expression.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_return_parentheses.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_return_two_expressions.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__last__token_based_last_return_without_values.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_foo_and_bar_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_foo_and_bar_unassigned.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_foo_typed_unassigned.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_foo_unassigned.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_typed_generic_var_break_equal_sign.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_var_assign_to_false.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_variadic.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_variadic_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_generic_pack_return_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_one_parameter.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_two_parameters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_binary_0b10101.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_0_005.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_0_5.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_100_25.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_123.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1_2345e50.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1_2345e_minus50.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_2000_05.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_4_6982573308436185e159.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_nan.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_negative_infinity.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_positive_infinity.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_thousand.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_typed_with_step.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_typed_without_step.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_with_step.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_without_step.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__prefix__token_based_prefix_identifier.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__prefix__token_based_prefix_identifier_in_parenthese.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__repeat__token_based_repeat_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__string__token_based_string_only_letters.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_double_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_single_and_double_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_single_quotes.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_empty.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_list_with_single_value.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_list_with_two_values.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_mixed_table.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_with_field_entry.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__table__token_based_table_with_index_entry.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_callback_with_variadic_type_is_generic_pack.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_callback_with_variadic_type_is_string.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_exported_string_alias.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_array.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_array_with_default.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_string_alias.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_indexer_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_one_property.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_one_property_and_indexer_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_type_field.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_type_field_with_name_ending_with_number.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_not_true.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_two_unary_minus_breaks_between_them.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_single_type.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_two_types.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_two_types_with_leading_token.snap
│ │ ├── darklua_core__generator__test__token_based__snapshots__while_statement__token_based_while_statement_empty.snap
│ │ └── darklua_core__generator__token_based__test__inserts_a_new_line_after_custom_added_comments.snap
│ ├── token_based.rs
│ └── utils.rs
├── lib.rs
├── nodes
│ ├── arguments.rs
│ ├── block.rs
│ ├── expressions
│ │ ├── binary.rs
│ │ ├── field.rs
│ │ ├── function.rs
│ │ ├── if_expression.rs
│ │ ├── index.rs
│ │ ├── interpolated_string.rs
│ │ ├── mod.rs
│ │ ├── number.rs
│ │ ├── parenthese.rs
│ │ ├── prefix.rs
│ │ ├── snapshots
│ │ │ ├── darklua_core__nodes__expressions__test__expression_from_floats__f64_0.snap
│ │ │ ├── darklua_core__nodes__expressions__test__expression_from_floats__f64_1_2345e50.snap
│ │ │ ├── darklua_core__nodes__expressions__test__expression_from_floats__f64_1e42.snap
│ │ │ ├── darklua_core__nodes__expressions__test__expression_from_floats__f64_infinity.snap
│ │ │ ├── darklua_core__nodes__expressions__test__expression_from_floats__f64_minus_zero.snap
│ │ │ └── darklua_core__nodes__expressions__test__expression_from_floats__i64_minus_one.snap
│ │ ├── string.rs
│ │ ├── string_utils.rs
│ │ ├── table.rs
│ │ ├── type_cast.rs
│ │ └── unary.rs
│ ├── function_body.rs
│ ├── function_call.rs
│ ├── identifier.rs
│ ├── mod.rs
│ ├── snapshots
│ │ ├── darklua_core__nodes__block__test__insert_statement_after_statement_upper_bound_with_tokens.snap
│ │ ├── darklua_core__nodes__block__test__insert_statement_at_index_0_with_tokens.snap
│ │ └── darklua_core__nodes__block__test__remove_first_statement.snap
│ ├── statements
│ │ ├── assign.rs
│ │ ├── compound_assign.rs
│ │ ├── do_statement.rs
│ │ ├── function.rs
│ │ ├── generic_for.rs
│ │ ├── if_statement.rs
│ │ ├── last_statement.rs
│ │ ├── local_assign.rs
│ │ ├── local_function.rs
│ │ ├── mod.rs
│ │ ├── numeric_for.rs
│ │ ├── repeat_statement.rs
│ │ ├── type_declaration.rs
│ │ └── while_statement.rs
│ ├── token.rs
│ ├── typed_identifier.rs
│ ├── types
│ │ ├── array.rs
│ │ ├── expression_type.rs
│ │ ├── function.rs
│ │ ├── function_variadic_type.rs
│ │ ├── generics.rs
│ │ ├── intersection.rs
│ │ ├── mod.rs
│ │ ├── optional.rs
│ │ ├── parenthese.rs
│ │ ├── string_type.rs
│ │ ├── table.rs
│ │ ├── type_field.rs
│ │ ├── type_name.rs
│ │ ├── type_pack.rs
│ │ ├── union.rs
│ │ └── variadic_type_pack.rs
│ └── variable.rs
├── parser.rs
├── process
│ ├── evaluator
│ │ ├── lua_value.rs
│ │ └── mod.rs
│ ├── expression_serializer.rs
│ ├── mod.rs
│ ├── node_counter.rs
│ ├── node_processor.rs
│ ├── post_visitor.rs
│ ├── processors
│ │ ├── find_identifier.rs
│ │ ├── find_usage.rs
│ │ └── mod.rs
│ ├── scope_visitor.rs
│ ├── utils
│ │ ├── mod.rs
│ │ └── permutator.rs
│ └── visitors.rs
├── rules
│ ├── append_text_comment.rs
│ ├── bundle
│ │ ├── mod.rs
│ │ ├── path_require_mode
│ │ │ ├── mod.rs
│ │ │ └── module_definitions.rs
│ │ ├── rename_type_declaration.rs
│ │ ├── require_mode.rs
│ │ └── snapshots
│ │ │ └── darklua_core__rules__bundle__test__default_bundler.snap
│ ├── call_parens.rs
│ ├── compute_expression.rs
│ ├── configuration_error.rs
│ ├── convert_index_to_field.rs
│ ├── convert_require
│ │ ├── instance_path.rs
│ │ ├── mod.rs
│ │ ├── roblox_index_style.rs
│ │ ├── roblox_require_mode.rs
│ │ ├── rojo_sourcemap.rs
│ │ └── snapshots
│ │ │ └── darklua_core__rules__convert_require__test__default_convert_require.snap
│ ├── empty_do.rs
│ ├── filter_early_return.rs
│ ├── group_local.rs
│ ├── inject_value.rs
│ ├── method_def.rs
│ ├── mod.rs
│ ├── no_local_function.rs
│ ├── remove_assertions.rs
│ ├── remove_call_match.rs
│ ├── remove_comments.rs
│ ├── remove_compound_assign.rs
│ ├── remove_continue.rs
│ ├── remove_debug_profiling.rs
│ ├── remove_floor_division.rs
│ ├── remove_if_expression.rs
│ ├── remove_interpolated_string.rs
│ ├── remove_nil_declarations.rs
│ ├── remove_spaces.rs
│ ├── remove_types.rs
│ ├── remove_unused_variable.rs
│ ├── rename_variables
│ │ ├── function_names.rs
│ │ ├── globals.rs
│ │ ├── mod.rs
│ │ ├── rename_processor.rs
│ │ └── snapshots
│ │ │ ├── darklua_core__rules__rename_variables__test__default_rename_variables.snap
│ │ │ ├── darklua_core__rules__rename_variables__test__no_globals_rename_variables.snap
│ │ │ ├── darklua_core__rules__rename_variables__test__rename_variables_with_function_names.snap
│ │ │ └── darklua_core__rules__rename_variables__test__roblox_globals_rename_variables.snap
│ ├── replace_referenced_tokens.rs
│ ├── require
│ │ ├── match_require.rs
│ │ ├── mod.rs
│ │ ├── path_iterator.rs
│ │ ├── path_locator.rs
│ │ └── path_require_mode.rs
│ ├── rule_property.rs
│ ├── shift_token_line.rs
│ ├── snapshots
│ │ ├── darklua_core__rules__append_text_comment__test__append_text_comment_with_text.snap
│ │ ├── darklua_core__rules__append_text_comment__test__append_text_comment_with_text_at_end.snap
│ │ ├── darklua_core__rules__call_parens__test__default_remove_function_call_parens.snap
│ │ ├── darklua_core__rules__compute_expression__test__default_compute_expression.snap
│ │ ├── darklua_core__rules__convert_index_to_field__test__default_convert_index_to_field.snap
│ │ ├── darklua_core__rules__empty_do__test__default_remove_empty_do.snap
│ │ ├── darklua_core__rules__filter_early_return__test__default_filter_after_early_return.snap
│ │ ├── darklua_core__rules__group_local__test__default_group_local_assignment.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_false_value_as_foo.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_float_value_as_var.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_hello_value_as_var.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_integer_value_as_var.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_negative_integer_value_as_var.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_nil_value_as_foo.snap
│ │ ├── darklua_core__rules__inject_value__test__inject_true_value_as_foo.snap
│ │ ├── darklua_core__rules__method_def__test__default_remove_method_definition.snap
│ │ ├── darklua_core__rules__no_local_function__test__default_convert_local_function_to_assign.snap
│ │ ├── darklua_core__rules__remove_assertions__test__default_remove_assertions.snap
│ │ ├── darklua_core__rules__remove_assertions__test__remove_assertions_without_side_effects.snap
│ │ ├── darklua_core__rules__remove_comments__test__default_remove_comments.snap
│ │ ├── darklua_core__rules__remove_comments__test__remove_comments_configure_with_invalid_regex_error.snap
│ │ ├── darklua_core__rules__remove_comments__test__remove_comments_in_code.snap
│ │ ├── darklua_core__rules__remove_compound_assign__test__default_remove_compound_assignment.snap
│ │ ├── darklua_core__rules__remove_continue__test__default_remove_continue.snap
│ │ ├── darklua_core__rules__remove_debug_profiling__test__default_remove_debug_profiling.snap
│ │ ├── darklua_core__rules__remove_debug_profiling__test__remove_debug_profiling_without_side_effects.snap
│ │ ├── darklua_core__rules__remove_floor_division__test__default_remove_floor_division.snap
│ │ ├── darklua_core__rules__remove_if_expression__test__default_remove_if_expression.snap
│ │ ├── darklua_core__rules__remove_interpolated_string__test__default_remove_interpolated_string.snap
│ │ ├── darklua_core__rules__remove_interpolated_string__test__remove_interpolated_string_tostring_strategy.snap
│ │ ├── darklua_core__rules__remove_nil_declarations__test__default_remove_nil_declaration.snap
│ │ ├── darklua_core__rules__remove_spaces__test__default_remove_spaces.snap
│ │ ├── darklua_core__rules__remove_spaces__test__remove_spaces_in_code.snap
│ │ ├── darklua_core__rules__remove_types__test__default_remove_types.snap
│ │ ├── darklua_core__rules__remove_unused_variable__test__default_remove_unused_variable.snap
│ │ ├── darklua_core__rules__rename_type_declaration__test__default_rename_type_declaration.snap
│ │ ├── darklua_core__rules__replace_referenced_tokens__test__default_replace_referenced_tokens.snap
│ │ ├── darklua_core__rules__shift_token_line__test__default_replace_referenced_tokens.snap
│ │ ├── darklua_core__rules__test__all_rule_names.snap
│ │ ├── darklua_core__rules__test__default_rules.snap
│ │ ├── darklua_core__rules__unused_if_branch__test__default_remove_unused_if_branch.snap
│ │ └── darklua_core__rules__unused_while__test__default_remove_unused_while.snap
│ ├── unused_if_branch.rs
│ └── unused_while.rs
└── utils
│ ├── expressions_as_statement.rs
│ ├── lines.rs
│ ├── luau_config.rs
│ ├── mod.rs
│ ├── scoped_hash_map.rs
│ ├── serde_string_or_struct.rs
│ ├── timer.rs
│ └── wasm_timer.rs
└── tests
├── ast_fuzzer
├── budget.rs
├── combination.rs
├── fuzzer_work.rs
├── mod.rs
└── random.rs
├── bundle.rs
├── cli.rs
├── frontend.rs
├── fuzz_generator.rs
├── fuzzed.rs
├── fuzzed_test_cases
├── a.lua
├── b.lua
├── c.lua
└── full_moon_stackoverflow.lua
├── rule_tests
├── append_text_comment.rs
├── compute_expression.rs
├── convert_index_to_field.rs
├── convert_require.rs
├── filter_early_return.rs
├── group_local_assignment.rs
├── inject_value.rs
├── mod.rs
├── no_local_function.rs
├── remove_assertions.rs
├── remove_call_parens.rs
├── remove_comments.rs
├── remove_compound_assignment.rs
├── remove_continue.rs
├── remove_debug_profiling.rs
├── remove_empty_do.rs
├── remove_floor_division.rs
├── remove_if_expression.rs
├── remove_interpolated_string.rs
├── remove_method_definition.rs
├── remove_nil_declaration.rs
├── remove_types.rs
├── remove_unused_if_branch.rs
├── remove_unused_variable.rs
├── remove_unused_while.rs
├── rename_variables.rs
└── snapshots
│ ├── rules__rule_tests__convert_require__convert_module_from_child_module.snap
│ ├── rules__rule_tests__convert_require__convert_module_require_across_service_instance.snap
│ ├── rules__rule_tests__convert_require__convert_multiple_sibling_modules_from_root_init_module.snap
│ ├── rules__rule_tests__convert_require__convert_nested_package_module_from_sibling_module.snap
│ ├── rules__rule_tests__convert_require__convert_package_module_from_nested_module.snap
│ ├── rules__rule_tests__convert_require__convert_sibling_module_from_init_module.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__for_continue_with_comment.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__for_inside_while.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__for_loop_continue_in_function_expression.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__for_loop_continue_in_function_statement.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__for_loop_with_only_continue.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__function_with_continue.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__generic_for_continue_or_break.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__multiple_conditions_continue.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__nested_for_continue_statements.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__numeric_for_continue_first_case.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__repeat_inside_for.snap
│ ├── rules__rule_tests__remove_continue__remove_continue_snapshots__sequential_loops_with_continue.snap
│ └── rules__utils__invalid_sourcemap.snap
├── rules.rs
├── snapshots
├── bundle__without_rules__bundle_without_rules_override_require.snap
├── bundle__without_rules__bundle_without_rules_require_json_file_with_object.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_after_declaration.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_forward_exported_types.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_forward_exported_types_with_generics.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_nested.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_twice.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_twice_with_different_paths.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_with_field_expression.snap
├── bundle__without_rules__bundle_without_rules_require_lua_file_with_statement.snap
├── bundle__without_rules__bundle_without_rules_require_skip_unknown_module.snap
├── bundle__without_rules__bundle_without_rules_require_small_bundle_case.snap
├── bundle__without_rules__bundle_without_rules_require_toml_with_object.snap
├── bundle__without_rules__bundle_without_rules_require_txt_file.snap
├── bundle__without_rules__bundle_without_rules_require_yaml_with_array.snap
├── bundle__without_rules__bundle_without_rules_require_yml_with_object.snap
├── bundle__without_rules__cyclic_requires__direct_cycle_in_required_file_with_ok_require.snap
├── bundle__without_rules__cyclic_requires__simple_direct_cycle.snap
├── bundle__without_rules__cyclic_requires__simple_direct_cycle_in_required_file.snap
├── bundle__without_rules__cyclic_requires__simple_transitive_cycle.snap
├── bundle__without_rules__cyclic_requires__two_different_direct_cycles.snap
├── bundle__without_rules__require_empty_path_errors.snap
├── bundle__without_rules__require_lua_file_with_parser_error.snap
├── bundle__without_rules__require_lua_file_with_unsupported_extension.snap
├── bundle__without_rules__require_own_lua_file.snap
├── bundle__without_rules__require_unknown_module.snap
├── bundle__without_rules__require_unknown_relative_file.snap
├── bundle__without_rules__require_unknown_relative_file_with_extension.snap
├── convert_help_command.snap
├── frontend__errors__missing_configuration_file.snap
├── frontend__errors__multiple_configuration_file_found.snap
├── frontend__errors__simple_cyclic_work_error.snap
├── help_command.snap
├── minify_help_command.snap
├── process_help_command.snap
├── run_convert_command_errors_when_no_extension_and_no_format.snap
├── run_convert_command_errors_when_unrecognized_extension.snap
├── run_convert_command_on_json_file_out.snap
├── run_convert_command_on_json_file_stdout.snap
├── run_convert_command_on_json_file_with_output.snap
├── run_convert_command_on_json_without_extension_file_with_output.snap
├── run_minify_command.snap
├── run_minify_command_init_out.snap
├── run_minify_verbose_command.snap
├── run_minify_with_column_span_command_init_out.snap
├── run_minify_with_column_span_in_config_command_init_out.snap
├── run_process_command.snap
├── run_process_command_init_out.snap
├── run_process_custom_config_command_out.snap
├── run_process_single_file_custom_config.snap
├── run_process_verbose_command.snap
└── short_help_command.snap
├── test_cases
├── small_bundle
│ ├── format.lua
│ ├── initialize.lua
│ ├── main.lua
│ └── value.lua
├── sourcemap
│ ├── Packages
│ │ └── Package1
│ │ │ ├── init.lua
│ │ │ └── value.lua
│ ├── default.project.json
│ ├── main.server.lua
│ ├── notes.txt
│ ├── place-sourcemap.json
│ ├── place.project.json
│ ├── sourcemap.json
│ └── src
│ │ ├── a.lua
│ │ ├── b.lua
│ │ ├── c.lua
│ │ ├── d
│ │ ├── d1.lua
│ │ ├── d2.lua
│ │ └── init.lua
│ │ └── init.lua
└── spaces_and_comments.lua
└── utils.rs
/.cargo/config.toml:
--------------------------------------------------------------------------------
1 | [target.aarch64-unknown-linux-gnu]
2 | linker = "aarch64-linux-gnu-gcc"
3 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text eol=lf
2 |
3 | *.gif binary
4 | *.ico binary
5 | *.jpg binary
6 | *.png binary
7 |
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | Closes #[issue number]
2 |
3 |
4 |
5 | - [ ] add entry to the changelog
6 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 | **/*.rs.bk
3 |
4 | .vscode
5 |
6 | bench_content/**/
7 |
--------------------------------------------------------------------------------
/scripts/install-lua.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | python3 -m pip install hererocks
4 | hererocks lua_install -r^ --lua=5.1
5 | export PATH=$PATH:$PWD/lua_install/bin
6 |
7 | luarocks install luafilesystem
8 | luarocks install busted
9 |
--------------------------------------------------------------------------------
/site/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": [
3 | [
4 | "prismjs",
5 | {
6 | "languages": ["lua", "json", "json5", "toml", "yaml"],
7 | "plugins": ["toolbar"],
8 | "theme": "okaidia",
9 | "css": true
10 | }
11 | ]
12 | ],
13 | "presets": [
14 | [
15 | "babel-preset-gatsby",
16 | {
17 | "targets": {
18 | "browsers": [">0.25%", "not dead"]
19 | }
20 | }
21 | ]
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/site/.eslintignore:
--------------------------------------------------------------------------------
1 | /darklua-wasm/**/*.js
2 |
--------------------------------------------------------------------------------
/site/.prettierignore:
--------------------------------------------------------------------------------
1 | .cache
2 | package.json
3 | package-lock.json
4 | public
5 | darklua-wasm
6 |
--------------------------------------------------------------------------------
/site/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "arrowParens": "avoid",
3 | "semi": false
4 | }
5 |
--------------------------------------------------------------------------------
/site/content/docs/rules-reference/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Rules Reference
3 | description: Learn the rules that transform code
4 | group: Rules
5 | order: 1
6 | ---
7 |
8 |
9 |
--------------------------------------------------------------------------------
/site/content/rules/convert_index_to_field.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Convert index expression into field expressions
3 | added_in: "0.7.0"
4 | parameters: []
5 | examples:
6 | - content: "return var['field']"
7 | - content: "return { ['field'] = true }"
8 | ---
9 |
10 | When an index expression is using a static string (or an expression that can be statically evaluated into a string), this rule replaces it with a field expression. This rule also applies for table declarations: an entry that uses the bracket syntax (e.g. `{ ["key"] = value }`) will get converted into a field-like entry when possible.
11 |
--------------------------------------------------------------------------------
/site/content/rules/convert_local_function_to_assign.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Convert local function definitions to variable declarations
3 | added_in: "0.3.3"
4 | parameters: []
5 | examples:
6 | - content: |
7 | local function foo(a, b)
8 | return a + b
9 | end
10 | ---
11 |
12 | Local functions that are not recursive will be transformed to a local assignment statement.
13 |
14 | Note that, depending on your Lua runtime implementation, you may no longer be able to use reflection-like APIs (eg `debug.info`) to acquire the name of the function, or the function name may be missing from stack traces of `error` invocations.
15 |
--------------------------------------------------------------------------------
/site/content/rules/remove_assertions.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes call to the assert function
3 | added_in: "0.12.0"
4 | parameters:
5 | - name: preserve_arguments_side_effects
6 | type: boolean
7 | description: Defines how darklua handle arguments passed to the function. If true, darklua will inspect each argument and preserve any potential side effects. When false, darklua will not perform any verification and simply erase any arguments passed.
8 | default: "true"
9 | examples:
10 | - content: assert(condition, 'condition is incorrect!')
11 | ---
12 |
13 | This rule removes all function calls to `assert`.
14 |
--------------------------------------------------------------------------------
/site/content/rules/remove_compound_assignment.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Convert compound assignments into regular assignments
3 | added_in: "0.9.0"
4 | parameters: []
5 | examples:
6 | - content: "counter += 1"
7 | - content: "object.prop -= 1"
8 | - content: "object.message ..= ' (context: ' .. context .. ')'"
9 | ---
10 |
11 | This rule can be particularly useful to convert Luau code to Lua.
12 |
--------------------------------------------------------------------------------
/site/content/rules/remove_continue.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Remove continue statements
3 | added_in: "0.14.1"
4 | parameters: []
5 | examples:
6 | - content: |
7 | for i = 1, 10 do
8 | if i == 1 then
9 | continue
10 | end
11 | print(i)
12 | end
13 | ---
14 |
15 | This rule removes all `continue` statements and replaces them with code that only use `break` statements.
16 |
17 | **Note:** this rule is useful if you are converting Luau code into regular Lua code.
18 |
--------------------------------------------------------------------------------
/site/content/rules/remove_empty_do.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes empty do statements
3 | added_in: "0.2.0"
4 | parameters: []
5 | examples:
6 | - content: |
7 | do
8 | end
9 | do
10 | do
11 | end
12 | end
13 | return {}
14 | ---
15 |
16 | This simple rule removes all empty do blocks found.
17 |
--------------------------------------------------------------------------------
/site/content/rules/remove_floor_division.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes floor divisions
3 | added_in: "0.14.1"
4 | parameters: []
5 | examples:
6 | - content: "return variable // divider"
7 | - content: "variable //= 5"
8 | ---
9 |
10 | This rule removes all usage of the floor division operator (`//`). It replaces those operations with a regular division (`/`) followed by a `math.floor()` call.
11 |
--------------------------------------------------------------------------------
/site/content/rules/remove_function_call_parens.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes functions call parentheses
3 | added_in: "0.3.4"
4 | parameters: []
5 | examples:
6 | - content: "print('hello')"
7 | - content: "create({ ... })"
8 | ---
9 |
10 | This rule will remove parentheses in a function call when there is only one string or one table as arguments. In large Lua programs, this can save several thousand bytes.
11 |
--------------------------------------------------------------------------------
/site/content/rules/remove_if_expression.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Remove if expressions
3 | added_in: "0.14.1"
4 | parameters: []
5 | examples:
6 | - content: |
7 | local variable = if condition() then { option = true } else { option = false }
8 | ---
9 |
10 | This rule removes all `if` expressions (not if statements!) and replaces them with an equivalent expression.
11 |
12 | **Note:** this rule is useful if you are converting Luau code into regular Lua code.
13 |
--------------------------------------------------------------------------------
/site/content/rules/remove_nil_declaration.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes explicit declaration to `nil`
3 | added_in: "0.8.0"
4 | parameters: []
5 | examples:
6 | - content: "local var = nil"
7 | - content: "local a, b, c = 1, nil, nil"
8 | - content: "local a, b = nil, call()"
9 | - content: "local var = call(), otherValue, true"
10 | ---
11 |
12 | This rule removes trailing `nil` values in local assignments. Additionally, it will trim unnecessary expressions in assignments when they do not cause any side-effects.
13 |
--------------------------------------------------------------------------------
/site/content/rules/remove_unused_variable.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes unused variable declarations
3 | added_in: "0.13.0"
4 | parameters: []
5 | examples:
6 | - content: "local var"
7 | - content: |
8 | local var1 = true
9 | local var2 = var1
10 | - content: "local var = call()"
11 | - content: "local function fn() print('unused') end"
12 | - content: |
13 | local a, b, c = 1, 2, 3
14 | return a
15 | ---
16 |
17 | This rule removes unused variables from code. It also removes unused local function definitions.
18 |
--------------------------------------------------------------------------------
/site/content/rules/remove_unused_while.md:
--------------------------------------------------------------------------------
1 | ---
2 | description: Removes unused while statement
3 | added_in: "0.2.3"
4 | parameters: []
5 | examples:
6 | - content: |
7 | while 'foo' == 'bar' do
8 | -- ...
9 | end
10 | ---
11 |
12 | When a condition from a while statement can be evaluated to false and has no side effects, this rule will remove the statement. For example, the following while statement would be removed.
13 |
14 | This rule is influenced by the evaluation system of darklua. The more darklua can evaluate code, the better this rule can be applied.
15 |
--------------------------------------------------------------------------------
/site/darklua-wasm/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 | **/*.rs.bk
3 | Cargo.lock
4 | bin/
5 | pkg/
6 | node-pkg/
7 | wasm-pack.log
8 |
--------------------------------------------------------------------------------
/site/darklua-wasm/javascript-tests/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 |
--------------------------------------------------------------------------------
/site/darklua-wasm/javascript-tests/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "darklua-wasm-tests",
3 | "private": true,
4 | "version": "0.1.0",
5 | "description": "",
6 | "main": "index.js",
7 | "scripts": {
8 | "build": "wasm-pack build -t nodejs",
9 | "test": "npx jest"
10 | },
11 | "author": "jeparlefrancais ",
12 | "dependencies": {
13 | "darklua-wasm": "file:../pkg"
14 | },
15 | "devDependencies": {
16 | "jest": "^29.7.0"
17 | },
18 | "type": "module"
19 | }
20 |
--------------------------------------------------------------------------------
/site/darklua-wasm/tests/web.rs:
--------------------------------------------------------------------------------
1 | //! Test suite for the Web and headless browsers.
2 |
3 | #![cfg(target_arch = "wasm32")]
4 | extern crate wasm_bindgen_test;
5 | use wasm_bindgen_test::*;
6 |
7 | use wasm_bindgen::JsValue;
8 |
9 | wasm_bindgen_test_configure!(run_in_browser);
10 |
11 | #[wasm_bindgen_test]
12 | fn process_empty_code() {
13 | assert_eq!(
14 | darklua_wasm::process_code("", JsValue::undefined()).unwrap(),
15 | ""
16 | );
17 | }
18 |
--------------------------------------------------------------------------------
/site/gatsby-browser.js:
--------------------------------------------------------------------------------
1 | // custom typefaces
2 | import "@fontsource-variable/comfortaa"
3 |
4 | // normalize CSS across browsers
5 | import "./src/normalize.css"
6 | // custom CSS styles
7 | import "./src/style.css"
8 |
--------------------------------------------------------------------------------
/site/gatsby-ssr.js:
--------------------------------------------------------------------------------
1 | import * as React from "react"
2 | import { getInitColorSchemeScript } from "@mui/material/styles"
3 |
4 | export function onRenderBody({ setPreBodyComponents }) {
5 | setPreBodyComponents([getInitColorSchemeScript()])
6 | }
7 |
--------------------------------------------------------------------------------
/site/src/components/ViewStateLink.js:
--------------------------------------------------------------------------------
1 | import * as React from "react"
2 |
3 | import { Link } from "gatsby"
4 | import { ThemeContext } from "./theme-provider"
5 |
6 | const ViewStateLink = React.forwardRef(
7 | ({ to, state = {}, children, ...props }, ref) => {
8 | const { current: currentThemeName } = React.useContext(ThemeContext)
9 |
10 | return (
11 |
17 | {children}
18 |
19 | )
20 | },
21 | )
22 |
23 | export default ViewStateLink
24 |
--------------------------------------------------------------------------------
/site/src/components/location-context.js:
--------------------------------------------------------------------------------
1 | import * as React from "react"
2 |
3 | export const LocationContext = React.createContext(null)
4 |
5 | export const useLocation = () => React.useContext(LocationContext)
6 |
--------------------------------------------------------------------------------
/site/src/components/new-tab-link.js:
--------------------------------------------------------------------------------
1 | import * as React from "react"
2 | import { Button } from "@mui/material"
3 |
4 | const NewTabLink = React.forwardRef(({ link, children, ...props }, ref) => {
5 | return (
6 |
16 | )
17 | })
18 |
19 | export default NewTabLink
20 |
--------------------------------------------------------------------------------
/site/src/components/theme-provider/dark.js:
--------------------------------------------------------------------------------
1 | const darkThemeOptions = {
2 | palette: {
3 | mode: "dark",
4 | primary: {
5 | main: "#8d73b5",
6 | },
7 | secondary: {
8 | main: "#f50057",
9 | },
10 | },
11 | }
12 |
13 | export default darkThemeOptions
14 |
--------------------------------------------------------------------------------
/site/src/components/theme-provider/light.js:
--------------------------------------------------------------------------------
1 | const lightThemeOptions = {
2 | palette: {
3 | mode: "light",
4 | primary: {
5 | main: "#644b8a",
6 | },
7 | secondary: {
8 | main: "#f50057",
9 | },
10 | },
11 | }
12 |
13 | export default lightThemeOptions
14 |
--------------------------------------------------------------------------------
/site/src/hooks/useThemeMode.js:
--------------------------------------------------------------------------------
1 | import * as React from "react"
2 |
3 | import { useTheme } from "@mui/material"
4 | import { ThemeContext } from "../components/theme-provider"
5 |
6 | export const useThemeMode = ({ light, dark }) => {
7 | const theme = React.useContext(ThemeContext)
8 | const themeValue = useTheme()
9 |
10 | if (theme.current === "light") {
11 | if (typeof light === "function") {
12 | return light(themeValue)
13 | }
14 | return light
15 | } else {
16 | if (typeof dark === "function") {
17 | return dark(themeValue)
18 | }
19 | return dark
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/site/src/images/darklua-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seaofvoices/darklua/e422125ae24846e383febf7ad7fded33c03fd584/site/src/images/darklua-icon.png
--------------------------------------------------------------------------------
/site/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seaofvoices/darklua/e422125ae24846e383febf7ad7fded33c03fd584/site/static/favicon.ico
--------------------------------------------------------------------------------
/site/static/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/src/cli/error.rs:
--------------------------------------------------------------------------------
1 | #[derive(Debug, Clone)]
2 | pub struct CliError {
3 | exit_code: i32,
4 | }
5 |
6 | impl CliError {
7 | pub fn new(exit_code: i32) -> Self {
8 | Self { exit_code }
9 | }
10 |
11 | pub fn exit_code(&self) -> i32 {
12 | self.exit_code
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/frontend/utils/mod.rs:
--------------------------------------------------------------------------------
1 | pub(crate) fn maybe_plural(count: usize) -> &'static str {
2 | if count > 1 {
3 | "s"
4 | } else {
5 | ""
6 | }
7 | }
8 |
9 | #[cfg(test)]
10 | mod test {
11 | use super::*;
12 |
13 | #[test]
14 | fn maybe_plural_gives_s_when_size_is_above_one() {
15 | assert_eq!(maybe_plural(2), "s");
16 | }
17 |
18 | #[test]
19 | fn maybe_plural_gives_s_when_size_is_one() {
20 | assert_eq!(maybe_plural(1), "");
21 | }
22 |
23 | #[test]
24 | fn maybe_plural_gives_s_when_size_is_zero() {
25 | assert_eq!(maybe_plural(0), "");
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_empty_tuple.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | ()
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_tuple_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__arguments__dense_arguments_tuple_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true,false)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__assign__dense_assign_two_variables_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo,var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__assign__dense_assign_two_variables_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo,var=nil,false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__assign__dense_assign_variable_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__binary__dense_binary_true_and_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true and false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__binary__dense_binary_true_equal_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true==false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__binary__dense_binary_type_cast_break_type_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true::Array ==false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__binary__dense_binary_wrap_left_to_break_type_field_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | (true::Collections.Array) =false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_assign__dense_local_assign_var_assign_to_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo()end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_variadic.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(...)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_variadic_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar,...)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_generic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local function foo():R...end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__local_function__dense_local_function_empty_with_two_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar,baz)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_binary_0b10101.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0b10101
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_0_005.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 5E-3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_0_5.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0.5
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_1.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_100_25.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 100.25
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_123.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 123
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_1_2345e50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 12345E46
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_1_2345e_minus50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1.2345E-50
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_2000_05.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 2000.05
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_4_6982573308436185e159.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | 4.6982573308436185e159
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_nan.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (0/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_negative_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (-1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_positive_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__number__dense_number_number_thousand.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1E3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_typed_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i:number=start,max,step do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_typed_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i:number=start,max do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | for i=start,max,step do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__numeric_for__dense_numeric_for_empty_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | for i=start,max do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__prefix__dense_prefix_identifier.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__prefix__dense_prefix_identifier_in_parenthese.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (foo)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__repeat__dense_repeat_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | repeat until false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__string__dense_string_only_letters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'hello'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__string__dense_string_with_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Hi"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__string__dense_string_with_single_and_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Don\'t"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__string__dense_string_with_single_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | "I'm cool"
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_list_with_single_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_list_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true,false}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_mixed_table.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true,field=true,[false]=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_with_field_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {field=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__table__dense_table_with_index_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {[false]=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_callback_with_variadic_type_is_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn=(T...)->()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_callback_with_variadic_type_is_string.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn=(...string)->()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_exported_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | export type Str=string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_array.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array ={T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_array_with_default.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array ={T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =()->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =(T)->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =(T)->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Str=string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type StringArray={[number]:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_one_property.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Obj={name:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_table_with_one_property_and_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type PackedArray={n:number,[number]:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_type_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object=module.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__type_declaration__dense_type_declaration_type_field_with_name_ending_with_number.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object=module0.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__unary__dense_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | -2^2
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__unary__dense_unary_not_true.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not true
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__unary__dense_unary_two_unary_minus_breaks_between_them.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | - -a
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__unary__dense_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not(false or true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_single_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | |true
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_two_types.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true|false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__union_type__dense_union_type_two_types_with_leading_token.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | |true|false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__dense__snapshots__while_statement__dense_while_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | while false do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_empty_tuple.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | ()
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_tuple_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__arguments__readable_arguments_tuple_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true, false)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__assign__readable_assign_two_variables_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo, var = false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__assign__readable_assign_two_variables_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo, var = nil, false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__assign__readable_assign_variable_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | var = false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__binary__readable_binary_true_and_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true and false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__binary__readable_binary_true_equal_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true == false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__binary__readable_binary_type_cast_break_type_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true::Array == false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__binary__readable_binary_wrap_left_to_break_type_field_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | (true::Collections.Array) < false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__binary__readable_binary_wrap_left_to_break_type_name_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | (true::Array) < false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_assign.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | name = variable;
6 | (t).field = false
7 |
8 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_compound_assign.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | name += variable + value;
6 |
7 | (t)[field] = false
8 |
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_function_call.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | fn();
6 |
7 | (t)[field] += 1
8 |
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_local_assign.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local name = if condition then true else fn();
6 |
7 | (fn)()
8 |
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__block__readable_block_ambiguous_function_call_from_repeat.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | repeat until not variable;
6 |
7 | (t).field += 1
8 |
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__compound_assign_statement__readable_compound_assign_statement_increment_var_by_one.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | var += 1
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__do_statement__readable_do_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__do_statement__readable_do_statement_nested_do.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | do
7 | do end
8 | end
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__expression__readable_expression_false_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__expression__readable_expression_nil_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | nil
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__expression__readable_expression_true_in_parenthese.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__expression__readable_expression_true_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__expression__readable_expression_variable_arguments.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | ...
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__field__readable_field_identifier_ending_with_number_prefix.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | oof0.field
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__field__readable_field_identifier_prefix.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo.bar
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function() end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function(...) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function(a, ...) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_variadic_with_two_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function(a, b, ...) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_with_generic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function(): R... end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_expr__readable_function_expr_empty_with_two_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function(a, b) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function foo() end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_variadic_typed_with_one_typed_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(a: string, ...: any) end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_variadic_with_one_typed_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(a: string, ...) end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function foo.bar() end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_generic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(): T... end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_method.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | function foo:bar() end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_name_ending_with_number_with_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn1.bar() end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_one_typed_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(a: string) end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_string_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(): string end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_two_typed_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(a: string, b: bool) end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_variadic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(): ...(true | nil) end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__function_statement__readable_function_statement_empty_with_void_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | function fn(): () end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | for var in true do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty_with_two_typed_vars.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for key: string, value: bool in true do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__generic_for__readable_generic_for_empty_with_typed_var.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for var: string in true do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | if false then
7 | end
8 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty_with_empty_else.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | if false then
7 | else
8 | end
9 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__if_statement__readable_if_statement_empty_with_empty_multiple_branch.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | if false then
7 | elseif nil then
8 | elseif false then
9 | end
10 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__index__readable_index_identifier_prefix_with_identifier_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo[bar]
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_only_letters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `hello`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_backticks.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `Say: \`Hi\``
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `Say: "Hi"`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_empty_table.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `{ {}}`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_empty_table_in_type_cast.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `{ {}::any}`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_single_and_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `Say: "Don't"`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_single_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `I'm cool`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__interpolated_string__readable_interpolated_string_with_true_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | `{true}`
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_single_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | &true
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_two_types.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true&false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__intersection_type__readable_intersection_type_two_types_with_leading_token.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | &true&false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_break_statement.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | break
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_continue_statement.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | continue
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_return_one_expression.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | return true
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_return_parentheses.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | assertion_line: 690
4 | expression: generator.into_string()
5 |
6 | ---
7 | return (true)
8 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_return_two_expressions.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | return true, nil
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__last__readable_last_return_without_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | return
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_and_bar_typed_unassigned.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local foo, bar: false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_and_bar_unassigned.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local foo, bar
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_typed_unassigned.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local foo: true
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_foo_unassigned.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local foo
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_typed_generic_var_break_equal_sign.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local var: List = false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_assign__readable_local_assign_var_assign_to_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local var = false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo() end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_variadic.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(...) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_variadic_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar, ...) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_generic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local function foo(): R... end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__local_function__readable_local_function_empty_with_two_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar, baz) end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_binary_0b10101.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0b10101
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_0_005.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 5E-3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_0_5.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0.5
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_1.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_100_25.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 100.25
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_123.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 123
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_1_2345e50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 12345E46
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_1_2345e_minus50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1.2345E-50
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_2000_05.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 2000.05
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_4_6982573308436185e159.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | 4.6982573308436185e159
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_nan.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (0/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_negative_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (-1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_positive_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__number__readable_number_number_thousand.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1E3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_typed_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i: number = start, max, step do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_typed_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i: number = start, max do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i = start, max, step do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__numeric_for__readable_numeric_for_empty_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i = start, max do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__prefix__readable_prefix_identifier.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__prefix__readable_prefix_identifier_in_parenthese.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (foo)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__repeat__readable_repeat_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | repeat until false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__string__readable_string_only_letters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'hello'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__string__readable_string_with_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Hi"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__string__readable_string_with_single_and_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Don\'t"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__string__readable_string_with_single_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | "I'm cool"
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_list_with_single_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_list_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true, false}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_mixed_table.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {
7 | true,
8 | field = true,
9 | [false] = true,
10 | }
11 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_with_field_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {field = true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__table__readable_table_with_index_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {[false] = true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_callback_with_variadic_type_is_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn = (T...) -> ()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_callback_with_variadic_type_is_string.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn = (...string) -> ()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_exported_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | export type Str = string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_array.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array = {T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_array_with_default.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array = {T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn = () -> R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn = (T) -> R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn = (T) -> R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Str = string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type StringArray = {[number]: string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_one_property.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Obj = {name: string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_table_with_one_property_and_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type PackedArray = {n: number, [number]: string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_type_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object = module.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__type_declaration__readable_type_declaration_type_field_with_name_ending_with_number.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object = module0.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__unary__readable_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | -2 ^ 2
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__unary__readable_unary_not_true.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not true
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__unary__readable_unary_two_unary_minus_breaks_between_them.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | - -a
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__unary__readable_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not (false or true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_single_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | | true
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_two_types.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true | false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__union_type__readable_union_type_two_types_with_leading_token.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | | true | false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__readable__snapshots__while_statement__readable_while_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | while false do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_empty_tuple.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | ()
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_tuple_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__arguments__token_based_arguments_tuple_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (true, false)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_two_variables_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo, var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_two_variables_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo, var=nil, false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__assign__token_based_assign_variable_with_one_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_true_and_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true and false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_true_equal_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | true==false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_type_cast_break_type_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true::Array ==false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__binary__token_based_binary_wrap_left_to_break_type_field_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | (true::Collections.Array) =false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_assign__token_based_local_assign_var_assign_to_false.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local var=false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo()end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_variadic.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(...)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_variadic_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar, ...)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_generic_pack_return_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | local function foo():R...end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_one_parameter.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__local_function__token_based_local_function_empty_with_two_parameters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | local function foo(bar, baz)end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_binary_0b10101.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0b10101
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_0_005.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 5E-3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_0_5.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 0.5
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_100_25.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 100.25
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_123.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 123
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1_2345e50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 12345E46
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_1_2345e_minus50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1.2345E-50
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_2000_05.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 2000.05
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_4_6982573308436185e159.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | 4.6982573308436185e159
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_nan.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (0/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_negative_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (-1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_positive_infinity.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (1/0)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__number__token_based_number_number_thousand.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 1E3
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_typed_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i:number=start,max,step do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_typed_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | for i:number=start,max do end
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_with_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | for i=start,max,step do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__numeric_for__token_based_numeric_for_empty_without_step.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | for i=start,max do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__prefix__token_based_prefix_identifier.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | foo
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__prefix__token_based_prefix_identifier_in_parenthese.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | (foo)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__repeat__token_based_repeat_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | repeat until false
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__string__token_based_string_only_letters.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'hello'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Hi"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_single_and_double_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | 'Say: "Don\'t"'
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__string__token_based_string_with_single_quotes.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | "I'm cool"
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_list_with_single_value.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_list_with_two_values.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true, false}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_mixed_table.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {true, field=true, [false]=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_with_field_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {field=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__table__token_based_table_with_index_entry.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | {[false]=true}
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_callback_with_variadic_type_is_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn=(T...)->()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_callback_with_variadic_type_is_string.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn=(...string)->()
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_exported_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | export type Str=string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_array.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array ={T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_array_with_default.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Array ={T}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =()->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_type_variable_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =(T)->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_generic_fn_with_type_variable_with_default_and_default_generic_pack.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Fn =(T)->R...
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_string_alias.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Str=string
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type StringArray={[number]:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_one_property.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Obj={name:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_table_with_one_property_and_indexer_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type PackedArray={n:number, [number]:string}
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_type_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object=module.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__type_declaration__token_based_type_declaration_type_field_with_name_ending_with_number.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | type Object=module0.Object
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_does_not_wrap_in_parens_if_an_inner_binary_has_higher_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | -2^2
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_not_true.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not true
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_two_unary_minus_breaks_between_them.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | - -a
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__unary__token_based_unary_wraps_in_parens_if_an_inner_binary_has_lower_precedence.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | not(false or true)
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_single_type.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | |true
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_two_types.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | true|false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__union_type__token_based_union_type_two_types_with_leading_token.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 | ---
5 | |true|false
6 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__test__token_based__snapshots__while_statement__token_based_while_statement_empty.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/mod.rs
3 | expression: generator.into_string()
4 |
5 | ---
6 | while false do end
7 |
--------------------------------------------------------------------------------
/src/generator/snapshots/darklua_core__generator__token_based__test__inserts_a_new_line_after_custom_added_comments.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/generator/token_based.rs
3 | expression: output
4 |
5 | ---
6 | call(a--new comment
7 | ,b--new comment
8 | )
9 |
--------------------------------------------------------------------------------
/src/lib.rs:
--------------------------------------------------------------------------------
1 | //! Transform Lua scripts.
2 |
3 | mod ast_converter;
4 | mod frontend;
5 | pub mod generator;
6 | pub mod nodes;
7 | mod parser;
8 | pub mod process;
9 | pub mod rules;
10 | mod utils;
11 |
12 | pub use frontend::{
13 | convert_data, process, BundleConfiguration, Configuration, DarkluaError, GeneratorParameters,
14 | Options, Resources, WorkerTree,
15 | };
16 | pub use parser::{Parser, ParserError};
17 |
--------------------------------------------------------------------------------
/src/nodes/expressions/snapshots/darklua_core__nodes__expressions__test__expression_from_floats__f64_0.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/nodes/expressions/mod.rs
3 | assertion_line: 332
4 | expression: result
5 | ---
6 | Number(
7 | Decimal(
8 | DecimalNumber {
9 | float: 0.0,
10 | exponent: None,
11 | token: None,
12 | },
13 | ),
14 | )
15 |
--------------------------------------------------------------------------------
/src/nodes/expressions/snapshots/darklua_core__nodes__expressions__test__expression_from_floats__f64_1_2345e50.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/nodes/expressions/mod.rs
3 | expression: result
4 | ---
5 | Number(
6 | Decimal(
7 | DecimalNumber {
8 | float: 1.2345e50,
9 | exponent: Some(
10 | (
11 | 46,
12 | true,
13 | ),
14 | ),
15 | token: None,
16 | },
17 | ),
18 | )
19 |
--------------------------------------------------------------------------------
/src/nodes/expressions/snapshots/darklua_core__nodes__expressions__test__expression_from_floats__f64_1e42.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/nodes/expressions/mod.rs
3 | expression: result
4 | ---
5 | Number(
6 | Decimal(
7 | DecimalNumber {
8 | float: 1e42,
9 | exponent: Some(
10 | (
11 | 42,
12 | true,
13 | ),
14 | ),
15 | token: None,
16 | },
17 | ),
18 | )
19 |
--------------------------------------------------------------------------------
/src/nodes/expressions/snapshots/darklua_core__nodes__expressions__test__expression_from_floats__f64_minus_zero.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/nodes/expressions/mod.rs
3 | expression: result
4 | ---
5 | Number(
6 | Decimal(
7 | DecimalNumber {
8 | float: -0.0,
9 | exponent: None,
10 | token: None,
11 | },
12 | ),
13 | )
14 |
--------------------------------------------------------------------------------
/src/nodes/expressions/snapshots/darklua_core__nodes__expressions__test__expression_from_floats__i64_minus_one.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/nodes/expressions/mod.rs
3 | expression: result
4 | ---
5 | Unary(
6 | UnaryExpression {
7 | operator: Minus,
8 | expression: Number(
9 | Decimal(
10 | DecimalNumber {
11 | float: 1.0,
12 | exponent: None,
13 | token: None,
14 | },
15 | ),
16 | ),
17 | token: None,
18 | },
19 | )
20 |
--------------------------------------------------------------------------------
/src/nodes/types/function_variadic_type.rs:
--------------------------------------------------------------------------------
1 | use super::{GenericTypePack, Type};
2 |
3 | #[derive(Clone, Debug, PartialEq, Eq)]
4 | pub enum FunctionVariadicType {
5 | Type(Type),
6 | GenericTypePack(GenericTypePack),
7 | }
8 |
9 | impl From for FunctionVariadicType {
10 | fn from(value: GenericTypePack) -> Self {
11 | Self::GenericTypePack(value)
12 | }
13 | }
14 |
15 | impl> From for FunctionVariadicType {
16 | fn from(value: T) -> Self {
17 | Self::Type(value.into())
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/process/processors/mod.rs:
--------------------------------------------------------------------------------
1 | //! A collection of utility processors that can be used when creating rules.
2 |
3 | mod find_identifier;
4 | mod find_usage;
5 |
6 | pub use find_identifier::*;
7 | pub(crate) use find_usage::*;
8 |
--------------------------------------------------------------------------------
/src/rules/bundle/snapshots/darklua_core__rules__bundle__test__default_bundler.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/bundle/mod.rs
3 | expression: rule
4 | ---
5 | "bundler"
6 |
--------------------------------------------------------------------------------
/src/rules/convert_require/snapshots/darklua_core__rules__convert_require__test__default_convert_require.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/convert_require/mod.rs
3 | expression: rule
4 | ---
5 | "convert_require"
6 |
--------------------------------------------------------------------------------
/src/rules/rename_variables/function_names.rs:
--------------------------------------------------------------------------------
1 | use crate::nodes::LocalFunctionStatement;
2 | use crate::process::NodeProcessor;
3 |
4 | #[derive(Debug, Clone, Default)]
5 | pub struct CollectFunctionNames {
6 | names: Vec,
7 | }
8 |
9 | impl From for Vec {
10 | fn from(collector: CollectFunctionNames) -> Self {
11 | collector.names
12 | }
13 | }
14 |
15 | impl NodeProcessor for CollectFunctionNames {
16 | fn process_local_function_statement(&mut self, function: &mut LocalFunctionStatement) {
17 | self.names
18 | .push(function.get_identifier().get_name().to_owned());
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/rules/rename_variables/snapshots/darklua_core__rules__rename_variables__test__default_rename_variables.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/rename_variables/mod.rs
3 | expression: new_rule()
4 |
5 | ---
6 | "rename_variables"
7 |
--------------------------------------------------------------------------------
/src/rules/rename_variables/snapshots/darklua_core__rules__rename_variables__test__no_globals_rename_variables.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/rename_variables/mod.rs
3 | expression: "Box::new(RenameVariables::new(empty())) as Box"
4 |
5 | ---
6 | {
7 | "rule": "rename_variables",
8 | "globals": []
9 | }
10 |
--------------------------------------------------------------------------------
/src/rules/rename_variables/snapshots/darklua_core__rules__rename_variables__test__rename_variables_with_function_names.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/rename_variables/mod.rs
3 | expression: rule as Box
4 |
5 | ---
6 | {
7 | "rule": "rename_variables",
8 | "include_functions": true
9 | }
10 |
--------------------------------------------------------------------------------
/src/rules/rename_variables/snapshots/darklua_core__rules__rename_variables__test__roblox_globals_rename_variables.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/rename_variables/mod.rs
3 | expression: rule as Box
4 |
5 | ---
6 | {
7 | "rule": "rename_variables",
8 | "globals": [
9 | "$roblox"
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/src/rules/require/mod.rs:
--------------------------------------------------------------------------------
1 | mod match_require;
2 | mod path_iterator;
3 | mod path_locator;
4 | mod path_require_mode;
5 |
6 | pub(crate) use match_require::{is_require_call, match_path_require_call};
7 | pub(crate) use path_locator::RequirePathLocator;
8 | pub(crate) use path_require_mode::PathRequireMode;
9 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__append_text_comment__test__append_text_comment_with_text.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/append_text_comment.rs
3 | expression: rule
4 | ---
5 | {
6 | "rule": "append_text_comment",
7 | "text": "content"
8 | }
9 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__append_text_comment__test__append_text_comment_with_text_at_end.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/append_text_comment.rs
3 | expression: rule
4 | ---
5 | {
6 | "rule": "append_text_comment",
7 | "location": "end",
8 | "text": "content"
9 | }
10 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__call_parens__test__default_remove_function_call_parens.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/call_parens.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_function_call_parens"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__compute_expression__test__default_compute_expression.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/compute_expression.rs
3 | expression: rule
4 |
5 | ---
6 | "compute_expression"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__convert_index_to_field__test__default_convert_index_to_field.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/convert_index_to_field.rs
3 | expression: rule
4 |
5 | ---
6 | "convert_index_to_field"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__empty_do__test__default_remove_empty_do.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/empty_do.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_empty_do"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__filter_early_return__test__default_filter_after_early_return.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/filter_early_return.rs
3 | assertion_line: 94
4 | expression: rule
5 |
6 | ---
7 | "filter_after_early_return"
8 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__group_local__test__default_group_local_assignment.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/group_local.rs
3 | expression: rule
4 |
5 | ---
6 | "group_local_assignment"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_false_value_as_foo.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "foo",
9 | "value": false
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_float_value_as_var.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "VAR",
9 | "value": 123.45
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_hello_value_as_var.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "VAR",
9 | "value": "hello"
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_integer_value_as_var.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "VAR",
9 | "value": 1
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_negative_integer_value_as_var.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "VAR",
9 | "value": -100.0
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_nil_value_as_foo.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "foo",
9 | "value": null
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__inject_value__test__inject_true_value_as_foo.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/inject_value.rs
3 | expression: rule
4 |
5 | ---
6 | {
7 | "rule": "inject_global_value",
8 | "identifier": "foo",
9 | "value": true
10 | }
11 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__method_def__test__default_remove_method_definition.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/method_def.rs
3 | expression: wrap(new_rule())
4 |
5 | ---
6 | "remove_method_definition"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__no_local_function__test__default_convert_local_function_to_assign.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/no_local_function.rs
3 | expression: new_rule()
4 |
5 | ---
6 | "convert_local_function_to_assign"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_assertions__test__default_remove_assertions.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_assertions.rs
3 | expression: rule
4 | ---
5 | "remove_assertions"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_assertions__test__remove_assertions_without_side_effects.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_assertions.rs
3 | expression: rule
4 | ---
5 | {
6 | "rule": "remove_assertions",
7 | "preserve_arguments_side_effects": false
8 | }
9 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_comments__test__default_remove_comments.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_comments.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_comments"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_comments__test__remove_comments_configure_with_invalid_regex_error.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_comments.rs
3 | expression: result.unwrap_err().to_string()
4 | ---
5 | unexpected value for field 'except': invalid regex provided `^[0-9`
6 | regex parse error:
7 | ^[0-9
8 | ^
9 | error: unclosed character class
10 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_compound_assign__test__default_remove_compound_assignment.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_compound_assign.rs
3 | expression: rule
4 | ---
5 | "remove_compound_assignment"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_continue__test__default_remove_continue.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_continue.rs
3 | expression: rule
4 | ---
5 | "remove_continue"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_debug_profiling__test__default_remove_debug_profiling.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_debug_profiling.rs
3 | expression: rule
4 | ---
5 | "remove_debug_profiling"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_debug_profiling__test__remove_debug_profiling_without_side_effects.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_debug_profiling.rs
3 | expression: rule
4 | ---
5 | {
6 | "rule": "remove_debug_profiling",
7 | "preserve_arguments_side_effects": false
8 | }
9 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_floor_division__test__default_remove_floor_division.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_floor_division.rs
3 | expression: rule
4 | ---
5 | "remove_floor_division"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_if_expression__test__default_remove_if_expression.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_if_expression.rs
3 | expression: rule
4 | ---
5 | "remove_if_expression"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_interpolated_string__test__default_remove_interpolated_string.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_interpolated_string.rs
3 | expression: rule
4 | ---
5 | "remove_interpolated_string"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_interpolated_string__test__remove_interpolated_string_tostring_strategy.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_interpolated_string.rs
3 | expression: rule
4 | ---
5 | {
6 | "rule": "remove_interpolated_string",
7 | "strategy": "tostring"
8 | }
9 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_nil_declarations__test__default_remove_nil_declaration.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_nil_declarations.rs
3 | assertion_line: 64
4 | expression: rule
5 |
6 | ---
7 | "remove_nil_declaration"
8 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_spaces__test__default_remove_spaces.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_spaces.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_spaces"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_types__test__default_remove_types.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_types.rs
3 | expression: rule
4 | ---
5 | "remove_types"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__remove_unused_variable__test__default_remove_unused_variable.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/remove_unused_variable.rs
3 | expression: rule
4 | ---
5 | "remove_unused_variable"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__rename_type_declaration__test__default_rename_type_declaration.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/rename_type_declaration.rs
3 | expression: rule
4 | ---
5 | "rename_type_declaration"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__replace_referenced_tokens__test__default_replace_referenced_tokens.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/replace_referenced_tokens.rs
3 | expression: rule
4 | ---
5 | "replace_referenced_tokens"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__shift_token_line__test__default_replace_referenced_tokens.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/shift_token_line.rs
3 | expression: rule
4 | ---
5 | "shift_token_line"
6 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__test__default_rules.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/mod.rs
3 | expression: rules
4 | ---
5 | [
6 | "remove_spaces",
7 | "remove_comments",
8 | "compute_expression",
9 | "remove_unused_if_branch",
10 | "remove_unused_while",
11 | "filter_after_early_return",
12 | "remove_empty_do",
13 | "remove_unused_variable",
14 | "remove_method_definition",
15 | "convert_index_to_field",
16 | "remove_nil_declaration",
17 | "rename_variables",
18 | "remove_function_call_parens"
19 | ]
20 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__unused_if_branch__test__default_remove_unused_if_branch.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/unused_if_branch.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_unused_if_branch"
7 |
--------------------------------------------------------------------------------
/src/rules/snapshots/darklua_core__rules__unused_while__test__default_remove_unused_while.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: src/rules/unused_while.rs
3 | expression: rule
4 |
5 | ---
6 | "remove_unused_while"
7 |
--------------------------------------------------------------------------------
/tests/fuzzed_test_cases/c.lua:
--------------------------------------------------------------------------------
1 | repeat
2 | function P75j.lbVvDb2Q(Bof, oVik) end
3 |
4 | for Z9r in 0b1000001110011110001 do end
5 |
6 | while... do end
7 |
8 | OJlQ6.S *= {}
9 |
10 | local function hcfLMV(pY, Y1VqO, hmrm, tKmKa, ...) end
11 | until 0x2f1c
12 |
13 | while if sn4y then false else false do
14 | local Tc
15 |
16 | local function yPA(yNA, oZaVq8Z, ...) end
17 | end
18 |
19 | for HaJx=..., {}, {}do
20 | if rT then
21 | end
22 |
23 | wsI ..= {}
24 | end
25 |
26 | repeat until Ep
27 |
28 | function ETN:KJ4y(sz, rsas7V, ...) end
29 |
30 | return nil
31 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_module_from_child_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | expression: "process `tests/test_cases/sourcemap/src/d/d2.lua`"
4 | ---
5 | local c = require(script.Parent.Parent:FindFirstChild('c'))
6 |
7 | return c .. c
8 |
9 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_module_require_across_service_instance.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | assertion_line: 152
4 | expression: "process `tests/test_cases/sourcemap/main.server.lua`"
5 | ---
6 | local Project = require(game:GetService('ReplicatedStorage'):FindFirstChild('Project'))
7 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_multiple_sibling_modules_from_root_init_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | expression: "process `tests/test_cases/sourcemap/src/init.lua`"
4 | ---
5 | local b = require(script:FindFirstChild('b'))
6 | local c = require(script:FindFirstChild('c'))
7 | local d = require(script:FindFirstChild('d'))
8 |
9 | local Package1 = require(script:FindFirstChild('Packages'):FindFirstChild('Package1'))
10 |
11 | return {
12 | b = b,
13 | c = c,
14 | d = d,
15 | Package1 = Package1,
16 | }
17 |
18 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_nested_package_module_from_sibling_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | expression: "process `tests/test_cases/sourcemap/Packages/Package1/init.lua`"
4 | ---
5 | return require(script:FindFirstChild('value'))
6 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_package_module_from_nested_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | expression: "process `tests/test_cases/sourcemap/src/d/d1.lua`"
4 | ---
5 | local Package1 = require(script.Parent.Parent:FindFirstChild('Packages'):FindFirstChild('Package1'))
6 |
7 | return Package1 .. Package1
8 |
9 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__convert_require__convert_sibling_module_from_init_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/convert_require.rs
3 | expression: "process `tests/test_cases/sourcemap/src/d/init.lua`"
4 | ---
5 | return {
6 | d1 = require(script:FindFirstChild('d1')),
7 | d2 = require(script:FindFirstChild('d2')),
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__for_continue_with_comment.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | local __DARKLUA_CONTINUE_1=false repeat if i % 2 == 0 then
7 | __DARKLUA_CONTINUE_1=true break -- Skip even numbers
8 | end
9 | -- Print odd numbers
10 | print(i)
11 | __DARKLUA_CONTINUE_1=true until true if not __DARKLUA_CONTINUE_1 then break end end
12 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__for_inside_while.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | while notDone() do
6 | if hasEnded() then
7 | break
8 | end
9 | for i = 1, 10 do
10 | local __DARKLUA_CONTINUE_2=false repeat if i == 1 then
11 | __DARKLUA_CONTINUE_2=true break
12 | end
13 | print(i)
14 | __DARKLUA_CONTINUE_2=true until true if not __DARKLUA_CONTINUE_2 then break end end
15 | end
16 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__for_loop_continue_in_function_expression.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | array[i] = function()
7 | for j = i, i + 10 do
8 | local __DARKLUA_CONTINUE_2=false repeat if j % 2 == 0 then
9 | __DARKLUA_CONTINUE_2=true break
10 | else
11 | print(i)
12 | end
13 | __DARKLUA_CONTINUE_2=true until true if not __DARKLUA_CONTINUE_2 then break end end
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__for_loop_with_only_continue.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | local __DARKLUA_CONTINUE_1=false repeat __DARKLUA_CONTINUE_1=true break
7 | until true if not __DARKLUA_CONTINUE_1 then break end end
8 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__function_with_continue.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | local __DARKLUA_CONTINUE_1=false repeat local function shouldSkip(val)
7 | return val % 2 == 0
8 | end
9 | if shouldSkip(i) then
10 | __DARKLUA_CONTINUE_1=true break
11 | end
12 | print(i)
13 | __DARKLUA_CONTINUE_1=true until true if not __DARKLUA_CONTINUE_1 then break end end
14 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__generic_for_continue_or_break.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for key, value in array do
6 | local __DARKLUA_CONTINUE_1=false repeat if skip(key) then
7 | __DARKLUA_CONTINUE_1=true break
8 | elseif stop(key) then
9 | break
10 | end
11 | print(value)
12 | __DARKLUA_CONTINUE_1=true until true if not __DARKLUA_CONTINUE_1 then break end end
13 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__multiple_conditions_continue.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | local __DARKLUA_CONTINUE_1=false repeat if i < 3 or i > 8 then
7 | __DARKLUA_CONTINUE_1=true break
8 | end
9 | print(i)
10 | __DARKLUA_CONTINUE_1=true until true if not __DARKLUA_CONTINUE_1 then break end end
11 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__nested_for_continue_statements.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | for j = 1, 10 do
7 | local __DARKLUA_CONTINUE_2=false repeat if j % 2 == 0 then
8 | __DARKLUA_CONTINUE_2=true break
9 | end
10 | print(i, j)
11 | __DARKLUA_CONTINUE_2=true until true if not __DARKLUA_CONTINUE_2 then break end end
12 | end
13 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__numeric_for_continue_first_case.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for i = 1, 10 do
6 | local __DARKLUA_CONTINUE_1=false repeat if i == 1 then
7 | __DARKLUA_CONTINUE_1=true break
8 | end
9 | print(i)
10 | __DARKLUA_CONTINUE_1=true until true if not __DARKLUA_CONTINUE_1 then break end end
11 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__rule_tests__remove_continue__remove_continue_snapshots__repeat_inside_for.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/rule_tests/remove_continue.rs
3 | expression: lua_code
4 | ---
5 | for key, value in array do
6 | if type(key) == 'number' then
7 | repeat
8 | key -= 1
9 | until key == 0
10 | elseif stop(key) then
11 | break
12 | end
13 | print(value)
14 | end
15 |
--------------------------------------------------------------------------------
/tests/rule_tests/snapshots/rules__utils__invalid_sourcemap.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/utils.rs
3 | assertion_line: 67
4 | ---
5 | error processing `src/init.lua` (convert_require [#0]): unable to read json data: EOF while parsing a value at line 1 column 0 (unable to parse Rojo sourcemap at `./sourcemap.json`)
6 |
--------------------------------------------------------------------------------
/tests/rules.rs:
--------------------------------------------------------------------------------
1 | mod ast_fuzzer;
2 | mod rule_tests;
3 | mod utils;
4 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__bundle_without_rules_require_skip_unknown_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: main
4 | ---
5 | local library = require('@lune/library')
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__cyclic_requires__direct_cycle_in_required_file_with_ok_require.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): cyclic require detected with `src/value1.lua` > `src/value2.lua` > `src/value1.lua`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__cyclic_requires__simple_direct_cycle.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): cyclic require detected with `src/value1.lua` > `src/value2.lua` > `src/value1.lua`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__cyclic_requires__simple_direct_cycle_in_required_file.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): cyclic require detected with `src/value1.lua` > `src/value2.lua` > `src/value1.lua`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__cyclic_requires__simple_transitive_cycle.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): cyclic require detected with `src/value1.lua` > `src/constant.lua` > `src/value2.lua` > `src/value1.lua`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__cyclic_requires__two_different_direct_cycles.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler):
6 | - cyclic require detected with `src/constant1.lua` > `src/constant2.lua` > `src/constant1.lua`
7 | - cyclic require detected with `src/value1.lua` > `src/value2.lua` > `src/value1.lua`
8 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_empty_path_errors.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): unable to require resource at ``: path is empty
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_lua_file_with_parser_error.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler):
6 | unable to parse `src/value.lua`: error occurred while creating ast: unexpected token ``. (starting from line 1, character 10 and ending on line 1, character 10)
7 | additional information: unexpected expression when looking for a statement
8 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_lua_file_with_unsupported_extension.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): unable to require resource with extension `error` at `src/value.error`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_own_lua_file.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): cyclic require detected with `src/main.lua` > `src/main.lua`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_unknown_module.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): unable to require resource at `@lune/library`: unknown source name `@lune`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_unknown_relative_file.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): unable to find `src/library` (tried `src/library`, `src/library.luau`, `src/library.lua`, `src/library/init`, `src/library/init.luau`, `src/library/init.lua`)
6 |
--------------------------------------------------------------------------------
/tests/snapshots/bundle__without_rules__require_unknown_relative_file_with_extension.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/bundle.rs
3 | expression: "error_display.join(\"\\n\")"
4 | ---
5 | error processing `src/main.lua` (bundler): unable to find `src/library.luau` (tried `src/library.luau`)
6 |
--------------------------------------------------------------------------------
/tests/snapshots/convert_help_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | Convert a data file [json, json5, yaml, toml] into a Lua file
6 |
7 | Usage: darklua convert [OPTIONS] [OUTPUT]
8 |
9 | Arguments:
10 | Data file to convert to Lua
11 | [OUTPUT] Path where to write the Lua file
12 |
13 | Options:
14 | -f, --format Data format ('json', 'yaml' or 'toml')
15 | -v, --verbose... Sets verbosity level (can be specified multiple times)
16 | -h, --help Print help
17 | -V, --version Print version
18 |
19 |
--------------------------------------------------------------------------------
/tests/snapshots/frontend__errors__missing_configuration_file.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/frontend.rs
3 | expression: errors_display
4 | ---
5 | - unable to find `missing/config.json` (expected to find configuration file as provided by the options)
6 |
--------------------------------------------------------------------------------
/tests/snapshots/frontend__errors__multiple_configuration_file_found.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/frontend.rs
3 | expression: errors_display
4 | ---
5 | - multiple default configuration file found: `.darklua.json`, `.darklua.json5`
6 |
--------------------------------------------------------------------------------
/tests/snapshots/frontend__errors__simple_cyclic_work_error.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/frontend.rs
3 | expression: errors_display
4 | ---
5 | - cyclic work detected:
6 | `src/a.lua` needs:
7 | - src/b.lua
8 | `src/b.lua` needs:
9 | - src/a.lua
10 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_errors_when_no_extension_and_no_format.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | an error happened: unable to find data format because the input file 'data' has no extension. Specify the data format using the '--format' option
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_errors_when_unrecognized_extension.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | an error happened: invalid data format 'yoyo' (possible options are: 'json', 'json5', 'yml' or 'toml') [unrecognized file extension]
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_on_json_file_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return{property=true}
6 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_on_json_file_stdout.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return{property=true}
6 |
7 | [2m[32msuccessfully converted data.json[0m [2m(in {{DURATION}})[0m
8 |
9 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_on_json_file_with_output.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | [2m[32msuccessfully converted data.json[0m [2m(in {{DURATION}})[0m
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_convert_command_on_json_without_extension_file_with_output.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | [2m[32msuccessfully converted data[0m [2m(in {{DURATION}})[0m
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_minify_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | successfully minified 1 file (in {{DURATION}})
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_minify_command_init_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return 1+1
6 |
--------------------------------------------------------------------------------
/tests/snapshots/run_minify_verbose_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | successfully minified 1 file (in {{DURATION}})
6 |
7 | INFO > successfully processed `src/init.lua`
8 | INFO > executed work in {{DURATION}}
9 |
10 |
--------------------------------------------------------------------------------
/tests/snapshots/run_minify_with_column_span_command_init_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 |
6 | return
7 | 1+
8 | 1
9 |
--------------------------------------------------------------------------------
/tests/snapshots/run_minify_with_column_span_in_config_command_init_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return 1+1
6 |
--------------------------------------------------------------------------------
/tests/snapshots/run_process_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | successfully processed 1 file (in {{DURATION}})
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_process_command_init_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return 2
6 |
--------------------------------------------------------------------------------
/tests/snapshots/run_process_custom_config_command_out.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | return true
6 |
--------------------------------------------------------------------------------
/tests/snapshots/run_process_single_file_custom_config.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | successfully processed 1 file (in {{DURATION}})
6 |
7 |
--------------------------------------------------------------------------------
/tests/snapshots/run_process_verbose_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | successfully processed 1 file (in {{DURATION}})
6 |
7 | INFO > using default configuration
8 | INFO > successfully processed `src/init.lua`
9 | INFO > executed work in {{DURATION}}
10 |
11 |
--------------------------------------------------------------------------------
/tests/snapshots/short_help_command.snap:
--------------------------------------------------------------------------------
1 | ---
2 | source: tests/cli.rs
3 | expression: content
4 | ---
5 | Transform Lua scripts
6 |
7 | Usage: darklua [OPTIONS]
8 |
9 | Commands:
10 | minify Minify lua files without applying any transformation
11 | process Process lua files with rules
12 | convert Convert a data file [json, json5, yaml, toml] into a Lua file
13 | help Print this message or the help of the given subcommand(s)
14 |
15 | Options:
16 | -v, --verbose... Sets verbosity level (can be specified multiple times)
17 | -h, --help Print help (see more with '--help')
18 | -V, --version Print version
19 |
20 |
--------------------------------------------------------------------------------
/tests/test_cases/small_bundle/format.lua:
--------------------------------------------------------------------------------
1 | local function format(value)
2 | return '[' .. tostring(value) .. ']'
3 | end
4 |
5 | return format -- comment after returning format function
6 |
--------------------------------------------------------------------------------
/tests/test_cases/small_bundle/initialize.lua:
--------------------------------------------------------------------------------
1 | local function initialize()
2 | end
3 |
4 | return initialize
5 |
--------------------------------------------------------------------------------
/tests/test_cases/small_bundle/main.lua:
--------------------------------------------------------------------------------
1 | local initialize = require("./initialize") -- import initialize module
2 |
3 | local value = require("./value") -- import value module
4 |
5 | local format = require("./format") --[[ import format module ]]
6 |
7 | print(format(value.number1 + value.number2))
8 |
--------------------------------------------------------------------------------
/tests/test_cases/small_bundle/value.lua:
--------------------------------------------------------------------------------
1 | local function generateNumber()
2 | return math.random(1, 9999)
3 | end
4 |
5 | return {
6 | zero = 0,
7 | one = 1,
8 | hex = 0x10,
9 | binary = 0b1010,
10 | number1 = generateNumber(),
11 | number2 = generateNumber(),
12 | number3 = generateNumber(),
13 | }
14 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/Packages/Package1/init.lua:
--------------------------------------------------------------------------------
1 | return require("./value")
2 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/Packages/Package1/value.lua:
--------------------------------------------------------------------------------
1 | return "Package1"
2 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/default.project.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Project",
3 | "tree": {
4 | "$path": "src",
5 | "Packages": {
6 | "$path": "Packages"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/main.server.lua:
--------------------------------------------------------------------------------
1 | local Project = require("./src")
2 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/notes.txt:
--------------------------------------------------------------------------------
1 | Generate the sourcemaps using Rojo:
2 |
3 | ```sh
4 | rojo sourcemap tests/test_cases/sourcemap/default.project.json > tests/test_cases/sourcemap/sourcemap.json
5 | rojo sourcemap tests/test_cases/sourcemap/place.project.json > tests/test_cases/sourcemap/place-sourcemap.json
6 | ```
7 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/place.project.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Roblox Place",
3 | "tree": {
4 | "$className": "DataModel",
5 | "ReplicatedStorage": {
6 | "$className": "ReplicatedStorage",
7 | "Project": {
8 | "$path": "src",
9 | "Packages": {
10 | "$path": "Packages"
11 | }
12 | }
13 | },
14 | "ServerScriptService": {
15 | "$className": "ServerScriptService",
16 | "MainScript": {
17 | "$path": "main.server.lua"
18 | }
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/a.lua:
--------------------------------------------------------------------------------
1 | local function newPrint(...)
2 | print("a", ...)
3 | end
4 |
5 | return newPrint
6 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/b.lua:
--------------------------------------------------------------------------------
1 | local a = require("./a")
2 |
3 | return a
4 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/c.lua:
--------------------------------------------------------------------------------
1 | return "c"
2 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/d/d1.lua:
--------------------------------------------------------------------------------
1 | local Package1 = require("@pkg/Package1")
2 |
3 | return Package1 .. Package1
4 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/d/d2.lua:
--------------------------------------------------------------------------------
1 | local c = require("../c")
2 |
3 | return c .. c
4 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/d/init.lua:
--------------------------------------------------------------------------------
1 | return {
2 | d1 = require("./d1"),
3 | d2 = require("./d2"),
4 | }
5 |
--------------------------------------------------------------------------------
/tests/test_cases/sourcemap/src/init.lua:
--------------------------------------------------------------------------------
1 | local b = require("./b")
2 | local c = require("./c")
3 | local d = require("./d")
4 |
5 | local Package1 = require("@pkg/Package1")
6 |
7 | return {
8 | b = b,
9 | c = c,
10 | d = d,
11 | Package1 = Package1,
12 | }
13 |
--------------------------------------------------------------------------------