From 5e1b573c12fca1af111e49619a95b1d18f213fc8 Mon Sep 17 00:00:00 2001
From: d0cd input
string.
Returns a tuple: [(token length, token)] if the next token can be eaten, otherwise returns an error.
The next token can be eaten if the bytes at the front of the given input
string can be scanned into a token.
An enumeration of the different types of variable type.
-source
. Read moreself
and other
values to be equal, and is used
+source
. Read moreself
and other
values to be equal, and is used
by ==
.type_: Type
The Type
of the variable.
span: Span
The Span
associated with the variable.
declaration: VariableType
The type of declaration for the variable.
-source
. Read moreself
and other
values to be equal, and is used
+source
. Read moreself
and other
values to be equal, and is used
by ==
.Consumes a ternary expression, accumulating any statements that are generated.
Consumes a tuple expression, accumulating any statements that are generated
Consumes a unary expression, accumulating any statements that are generated.
-Consumes the expressions in an AssertStatement
, returning the list of simplified statements.
Consumes the expressions in an AssertStatement
, returning the list of simplified statements.
Consume all AssignStatement
s, renaming as necessary.
Consumes a Block
, flattening its constituent ConditionalStatement
s.
Consumes the expressions associated with ExpressionStatement
, returning the simplified ExpressionStatement
.
Reconstructs the expression associated with the return statement, returning a simplified ReturnStatement
.
Note that type checking guarantees that there is at most one ReturnStatement
in a block.
Reconstructs records in the program, ordering its fields such that owner
and is the first field.
Returns the argument unchanged.
diff --git a/search-index.js b/search-index.js index 6aae747456..ccb0b1204e 100644 --- a/search-index.js +++ b/search-index.js @@ -7,8 +7,8 @@ var searchIndex = JSON.parse('{\ "leo_errors":{"doc":"leo-errors","t":"AOAAAAAADRMLLLLMMLLLMLLLLLLMLMLLLLLMLLDMLLLLLLLLLLLLLLLMLLLLLLILKKKKKKDDIGDDDGLLLLLLLLLLLLLLLKLLLLKLLLLMLMLLLLLLLLLLLLMLLLLLLKLLLLLMLLLLLLLLLLLLLLLLLLLLLMLLNNNNNNNNEENNNNNGNALLLLAALLLALLLLLLLLLLLLLLLLLALLAAALLLLLLLLALLAENNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLANENLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLANENLLLLLLLLLLLLLLLLLLLLLLLLLLLLLANENLLLLLLLLLLLLLLLLLLLLLLLLFLLANNELLLLLLLLLLLLLLLLLLLLLLLLLLANNELLLLLLLLLLLLLLLLLLLLLLLLLANNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAANNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNNELLLLLLLLLLLLLLLLLLLLLLLLLANNELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["common","create_messages","emitter","errors","backtraced","formatted","macros","traits","Backtraced","INDENT","backtrace","borrow","borrow_mut","clone","clone_into","code","code_identifier","default","description","eq","error","error_code","exit_code","fmt","fmt","from","hash","help","into","message","new_from_backtrace","to_owned","to_string","try_from","try_into","type_","type_id","warning_code","Formatted","backtrace","borrow","borrow_mut","clone","clone_into","default","description","eq","error_code","exit_code","fmt","fmt","from","hash","into","new_from_span","span","to_owned","to_string","try_from","try_into","type_id","warning_code","LeoMessageCode","code_identifier","code_mask","error_code","exit_code","is_error","message_type","warning_code","Buffer","BufferEmitter","Emitter","ErrBuffer","Handler","HandlerInner","StderrEmitter","WarningBuffer","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","default","default","default","emit_err","emit_err","emit_err","emit_err","emit_err","emit_warning","emit_warning","emit_warning","emit_warning","emit_warning","emitter","err_count","err_count","extend_if_error","extract_errs","extract_warnings","fatal_err","fmt","fmt","from","from","from","from","from","had_errors","inner","into","into","into","into","into","into_inner","last_emitted_err_code","last_emitted_err_code","last_emitted_err_code","last_emitted_err_code","last_entry","last_err","last_error_code","new","new","new_with_buf","push","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","warn_count","warning_count","with","Anyhow","AstError","CliError","CompilerError","Err","FlattenError","InputError","LastErrorCode","LeoError","LeoWarning","LoopUnrollerError","Ok","PackageError","ParserError","ParserWarning","Result","TypeCheckerError","ast","borrow","borrow","borrow_mut","borrow_mut","cli","compiler","error_code","error_code","exit_code","flattener","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","input","into","into","loop_unroller","package","parser","source","source","to_string","to_string","try_from","try_from","try_into","try_into","type_checker","type_id","type_id","ast_errors","AstError","Backtraced","Formatted","borrow","borrow_mut","clone","clone_into","code_mask","error_code","exit_code","failed_to_convert_ast_to_json_string","failed_to_convert_ast_to_json_value","failed_to_convert_symbol_table_to_json_string","failed_to_convert_symbol_table_to_json_value","failed_to_create_ast_json_file","failed_to_create_symbol_table_json_file","failed_to_read_json_file","failed_to_read_json_string_to_ast","failed_to_read_json_string_to_symbol_table","failed_to_write_ast_to_json_file","failed_to_write_symbol_table_to_json_file","fmt","fmt","from","from","from","into","is_error","message_type","num_exit_codes","shadowed_function","shadowed_record","shadowed_struct","shadowed_variable","source","to_owned","to_string","try_from","try_into","type_id","warning_code","cli_errors","Backtraced","CliError","Formatted","borrow","borrow_mut","cli_io_error","clone","clone_into","code_mask","could_not_fetch_versions","error_code","exit_code","failed_to_enable_ansi_support","failed_to_execute_build","failed_to_execute_deploy","failed_to_execute_execute","failed_to_execute_new","failed_to_execute_node","failed_to_execute_run","failed_to_load_instructions","failed_to_parse_deploy","failed_to_parse_execute","failed_to_parse_new","failed_to_parse_node","failed_to_parse_run","failed_to_parse_seed","failed_to_write_file","fmt","fmt","from","from","from","into","is_error","message_type","needs_leo_build","num_exit_codes","old_release_version","self_update_build_error","self_update_error","source","to_owned","to_string","try_from","try_into","type_id","warning_code","compiler_errors","Backtraced","CompilerError","Formatted","borrow","borrow_mut","cannot_open_cwd","clone","clone_into","code_mask","error_code","exit_code","file_read_error","fmt","fmt","from","from","from","illegal_static_member_assignment","import_not_found","into","is_error","message_type","num_exit_codes","program_name_should_match_file_name","program_scope_name_does_not_match","source","to_owned","to_string","try_from","try_into","type_id","warning_code","flattener_errors","Backtraced","FlattenError","Formatted","binary_overflow","borrow","borrow_mut","clone","clone_into","code_mask","error_code","exit_code","fmt","fmt","from","from","from","into","is_error","loop_has_neg_value","message_type","num_exit_codes","source","to_owned","to_string","try_from","try_into","type_id","type_name","unary_overflow","warning_code","input_errors","Backtraced","Formatted","InputError","borrow","borrow_mut","clone","clone_into","code_mask","error_code","exit_code","fmt","fmt","from","from","from","illegal_expression","into","is_error","message_type","num_exit_codes","source","to_owned","to_string","try_from","try_into","type_id","unexpected_section","unexpected_type","warning_code","loop_unroller_errors","Backtraced","Formatted","LoopUnrollerError","borrow","borrow_mut","clone","clone_into","code_mask","error_code","exit_code","fmt","fmt","from","from","from","into","is_error","loop_range_decreasing","message_type","num_exit_codes","source","to_owned","to_string","try_from","try_into","type_id","variable_array_access","warning_code","package_errors","Backtraced","Formatted","PackageError","borrow","borrow_mut","clone","clone_into","code_mask","directory_not_found","empty_source_directory","error_code","exit_code","failed_to_create_aleo_file","failed_to_create_directory","failed_to_create_inputs_directory","failed_to_create_source_directory","failed_to_get_file_name","failed_to_get_input_file_entry","failed_to_get_input_file_type","failed_to_get_leo_file_entry","failed_to_get_leo_file_extension","failed_to_initialize_package","failed_to_open_aleo_file","failed_to_open_manifest","failed_to_read_checksum_file","failed_to_read_circuit_file","failed_to_read_file","failed_to_read_input_file","failed_to_read_inputs_directory","failed_to_read_snapshot_file","failed_to_remove_aleo_file","failed_to_remove_checksum_file","failed_to_remove_circuit_file","failed_to_remove_directory","failed_to_remove_snapshot_file","failed_to_set_cwd","failed_to_write_aleo_file","fmt","fmt","from","from","from","into","invalid_input_file_type","invalid_leo_file_extension","invalid_package_name","io_error_checksum_file","io_error_circuit_file","io_error_env_file","io_error_gitignore_file","io_error_input_file","io_error_main_file","is_error","message_type","num_exit_codes","source","source_directory_can_contain_only_one_file","to_owned","to_string","try_from","try_into","type_id","warning_code","parser_errors","parser_warnings","Backtraced","Formatted","ParserError","array_must_have_at_least_one_element","async_finalize_is_deprecated","borrow","borrow_mut","circuit_is_deprecated","clone","clone_into","code_mask","console_statements_are_not_yet_supported","could_not_lex","error_code","exit_code","finalize_statements_are_deprecated","fmt","fmt","from","from","from","implicit_values_not_allowed","inputs_multiple_variable_modes_specified","into","invalid_address_lit","invalid_associated_access","invalid_import_list","invalid_method_call","invalid_network","is_error","leo_imports_only","lexer_bidi_override","lexer_block_comment_does_not_close_before_eof","lexer_empty_block_comment","lexer_empty_input","lexer_expected_valid_escaped_char","lexer_hex_number_provided","lexer_string_not_closed","message_type","missing_program_scope","mixed_commas_and_semicolons","num_exit_codes","only_one_program_scope_is_allowed","source","space_in_annotation","spread_in_array_init","to_owned","to_string","try_from","try_into","tuple_index_must_be_whole_number","tuple_must_have_at_least_two_elements","type_id","unexpected","unexpected_eof","unexpected_ident","unexpected_statement","unexpected_str","unexpected_token","unexpected_whitespace","warning_code","Backtraced","Formatted","ParserWarning","borrow","borrow_mut","clone","clone_into","code_mask","const_parameter_or_input","deprecated","error_code","exit_code","fmt","fmt","from","from","from","into","is_error","message_type","num_exit_codes","source","to_owned","to_string","try_from","try_into","type_id","warning_code","type_checker_error","Backtraced","Formatted","TypeCheckerError","array_element_cannot_be_record","array_element_cannot_be_tuple","array_empty","array_too_large","assign_unit_expression_to_variable","borrow","borrow_mut","can_only_call_inline_function","cannot_assign_to_const_input","cannot_assign_to_const_var","cannot_call_external_inline_function","cannot_have_constant_output_mode","cannot_invoke_call_to_local_transition_function","clone","clone_into","code_mask","compare_address","composite_data_type_cannot_contain_tuple","const_declaration_can_only_have_one_binding","const_declaration_must_be_literal_or_tuple_of_literals","core_type_name_conflict","could_not_determine_type","cyclic_function_dependency","cyclic_struct_dependency","duplicate_record_variable","duplicate_struct_member","error_code","exit_code","expected_one_type_of","expression_statement_must_be_function_call","finalize_block_must_not_be_empty","finalize_cannot_output_record","finalize_cannot_return_value","finalize_cannot_take_record_as_input","finalize_cannot_take_tuple_as_input","finalize_in_finalize","finalize_input_mode_must_be_public","finalize_name_mismatch","finalize_output_mode_must_be_public","finalize_statement_cannot_contain_tuples","finalize_without_finalize_block","fmt","fmt","from","from","from","function_cannot_output_record","function_cannot_take_tuple_as_input","function_has_no_return","imported_program_cannot_import_program","incorrect_num_args_to_call","incorrect_num_args_to_finalize","incorrect_num_struct_members","incorrect_num_tuple_elements","incorrect_tuple_length","into","invalid_assignment_target","invalid_associated_constant","invalid_block_access","invalid_core_constant","invalid_core_function","invalid_core_function_call","invalid_int_value","invalid_mapping_type","invalid_operation_inside_finalize","invalid_operation_outside_finalize","invalid_self_access","invalid_struct_variable","invalid_tuple","invalid_type","is_error","lhs_must_be_identifier_or_tuple","lhs_tuple_element_must_be_an_identifier","loop_body_contains_finalize","loop_body_contains_return","loop_bound_must_be_a_literal","loop_bound_must_be_literal_or_const","loop_bound_type_mismatch","loop_range_decreasing","message_type","missing_finalize","missing_return","missing_struct_member","nested_tuple_expression","nested_tuple_type","num_exit_codes","only_transition_functions_can_have_finalize","operation_must_be_in_finalize_block","record_var_wrong_type","regular_function_inputs_cannot_have_modes","required_record_variable","source","strings_are_not_supported","struct_cannot_have_member_mode","struct_or_record_cannot_contain_record","to_owned","to_string","too_many_mappings","too_many_transitions","transition_function_inputs_cannot_be_const","try_from","try_into","tuple_out_of_range","type_id","type_should_be","undefined_type","unit_expression_only_in_return_statements","unknown_annotation","unknown_sym","unreachable_code_after_return","warning_code"],"q":[[0,"leo_errors"],[4,"leo_errors::common"],[8,"leo_errors::common::backtraced"],[38,"leo_errors::common::formatted"],[62,"leo_errors::common::traits"],[70,"leo_errors::emitter"],[156,"leo_errors::errors"],[218,"leo_errors::errors::ast"],[219,"leo_errors::errors::ast::ast_errors"],[260,"leo_errors::errors::cli"],[261,"leo_errors::errors::cli::cli_errors"],[308,"leo_errors::errors::compiler"],[309,"leo_errors::errors::compiler::compiler_errors"],[341,"leo_errors::errors::flattener"],[342,"leo_errors::errors::flattener::flattener_errors"],[372,"leo_errors::errors::input"],[373,"leo_errors::errors::input::input_errors"],[402,"leo_errors::errors::loop_unroller"],[403,"leo_errors::errors::loop_unroller::loop_unroller_errors"],[431,"leo_errors::errors::package"],[432,"leo_errors::errors::package::package_errors"],[495,"leo_errors::errors::parser"],[497,"leo_errors::errors::parser::parser_errors"],[558,"leo_errors::errors::parser::parser_warnings"],[586,"leo_errors::errors::type_checker"],[587,"leo_errors::errors::type_checker::type_checker_error"],[701,"alloc::string"],[702,"core::fmt"],[703,"core::fmt"],[704,"core::option"],[705,"backtrace::capture"],[706,"alloc::string"],[707,"core::any"],[708,"leo_span::span"],[709,"core::convert"],[710,"core::fmt"],[711,"alloc::boxed"],[712,"core::ops::function"],[713,"anyhow"],[714,"core::error"],[715,"std::fs"]],"d":["Contains the common functionalities for defining errors..","A macro that given an enum, exit code mask, error code …","Contains traits and types for channels through which …","Contains the errors and warnings for the Leo lang.","This module contains a backtraced error and its methods.","This module contains a formatted error and its methods.","This module contains the macros for making errors easily.","This module contains traits for making errors easily.","Backtraced compiler ouput type undefined valuex
–> …","The indent for an error message.","The backtrace representing where the error occured in Leo.","","","","","The error exit code.","The error leading digits identifier.","","","","Is this Backtrace a warning or error?","Gets a unique error identifier.","Gets the backtraced error exit code.","","","Returns the argument unchanged.","","The error help message if it exists.","Calls U::from(self)
.","The error message.","Creates a backtraced error from a backtrace.","","","","","The characters representing the type of error.","","Gets a unique warning identifier.","Formatted compiler error type undefined value x
–> …","The backtrace to track where the Leo error originated.","","","","","","","","Returns an error identifier.","Calls the backtraces error exit code.","","","Returns the argument unchanged.","","Calls U::from(self)
.","Creates a backtraced error from a span and a backtrace.","The formatted error span information.","","","","","","Returns an warning identifier.","MessageCode trait that all Errors should implement.","The LeoErrorCode which has a default code identifier of 037","Returns the messages’s exit code mask, as to avoid …","Returns the prefixed error identifier.","Returns the error’s exit code for the program.","Returns if the message is an error or warning.","Returns the message’s code type for the program.","Returns the prefixed warning identifier.","A buffer of T
s.","An Emitter
that collects into a list.","Types that are sinks for compiler errors.","A buffer of LeoError
s.","A handler deals with errors and other compiler output.","Contains the actual data for Handler
. Modelled this way to …","A trivial Emitter
using the standard error.","A buffer of LeoWarning
s.","","","","","","","","","","","","","","","","Emit the error err
.","","Emit the error err
.","Emit the error err
.","","Emit the warning.","","Emit the error err
.","Emit the error err
.","","The sink through which errors will be emitted.","The number of errors thus far.","Number of errors emitted thus far.","Extend handler with error
given res = Err(error)
.","Extracts all the errors collected in this emitter.","Extracts all the errors collected in this emitter.","Emits the error err
. This will immediately abort …","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Did we have any errors thus far?","The inner handler. RefCell
is used here to avoid &mut
all …","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Extract the underlying list of Ts.","Tracks last emitted error.","","Gets the last emitted error’s exit code.","","Last entry to the buffer.","Gets the last emitted error’s exit code if it exists. …","Exit code of the last emitted error.","Construct a Handler
using the given emitter
.","Returns a new buffered emitter.","Construct a Handler
that will append to buf
.","Push x
to the buffer.","","","","","","","","","","","","","","","","","","Number of warnings emitted thus far.","The number of warnings thus far.","Runs logic
provided a handler that collects all errors …","Anyhow errors.","Represents an AST Error in a Leo Error.","Represents an CLI Error in a Leo Error.","Represents an Compiler Error in a Leo Error.","Contains the error value","Represents a Flatten Error in a Leo Error.","Represents an Input Error in a Leo Error.","Purely for just exiting with the correct status code and …","The LeoError type that contains all sub error types. This …","The LeoWarning type that contains all sub error types. …","Represents a Loop Unroller Error in a Leo Error.","Contains the success value","Represents an Package Error in a Leo Error.","Represents an Parser Error in a Leo Error.","Represents an Parser Error in a Leo Error.","A global result type for all Leo crates, that defaults the …","Represents a Type Checker Error in a Leo Error.","Contains the AST error definitions.","","","","","Contains the CLI error definitions.","Contains the Compiler error definitions.","Implement error code for each type of Error.","Implement warning code for each type of Warning.","Implement exit code for each type of Error.","Contains the Flattener error definitions.","","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Contains the Input error definitions.","Calls U::from(self)
.","Calls U::from(self)
.","","Contains the Package error definitions.","Contains the Parser error definitions.","","","","","","","","","Contains the Type Checker error definitions.","","","This module contains the AST error definitions.","AstError enum that represents all the errors for the …","","","","","","","","","","For when the AST fails to be represented as a JSON string.","For when the AST fails to be represented as a JSON value.","For when the symbol table fails to be represented as a …","For when the symbol table fails to be represented as a …","For when the AST fails to create the AST JSON file.","For when the symbol table fails to create the symbol table …","For when the a JSON files fails to be represented as an …","For when the a JSON string fails to be represented as an …","For when the a JSON string fails to be represented as an …","For when the AST fails to write the AST JSON file.","For when the symbol table fails to write the symbol table …","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","For when a user shadows a function.","For when a user shadows a record.","For when a user shadows a struct.","For when a user shadows a variable.","","","","","","","","This module contains the CLI error definitions.","","CliError enum that represents all the errors for the …","","","","For when the CLI experiences an IO error.","","","","For when the CLI could not fetch the versions.","","","For when the CLI fails to enable ansi support.","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","For when the CLI has an old release version.","For when the CLI fails to self update.","For when the CLI fails to self update.","","","","","","","","This module contains the Compiler error definitions.","","CompilerError enum that represents all the errors for the …","","","","","","","","","","For when the compiler can’t read a file from the …","","","","Returns the argument unchanged.","","For when a user tries to assign to a struct static member.","","Calls U::from(self)
.","","","","","","","","","","","","","This module contains the Flattener error definitions.","","CliError enum that represents all the errors for the …","","For when a constant operation would cause an overflow.","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","For when a loop uses a negative value.","","","","","","","","","Generates the type name of a value.","For when a constant operation would cause an overflow.","","This module contains the Input error definitions.","","","InputError enum that represents all the errors for the …","","","","","","","","","","","","Returns the argument unchanged.","For when the expression is not allowed in an input file.","Calls U::from(self)
.","","","","","","","","","","For when section name is not an allowed one.","For when declared variable type mismatches actual type.","","This module contains the Input error definitions.","","","LoopUnrollerError enum that represents all the errors for …","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self)
.","","","","","","","","","","","","","This module contains the Package error definitions.","","","PackageError enum that represents all the errors for the …","","","","","","For when opening a directory failed.","","","","","For when creating a directory failed.","For when creating the inputs directory failed.","For when creating the source directory failed.","","For when getting a input file entry failed.","For when getting the input file type failed.","For when getting a Leo file entry failed.","For when getting the source file extension failed.","For when the package failed to initalize.","","","For when reading the checksum file failed.","For when reading the struct file failed.","For when file could not be read.","For when reading the input file failed.","For when reading the input directory failed.","For when reading the snapshot file failed.","","For when removing the checksum file failed.","For when removing the struct file failed.","For when removing a directory failed.","For when removing the snapshot file failed.","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","For when getting the input file has an invalid file type.","For when the Leo file has an invalid extension.","For when the package has an invalid name.","For when the checksum file has an IO error.","For when the struct file has an IO error.","For when the environment file has an IO error.","For when the gitignore file has an IO error.","For when the input file has an IO error.","For when the main file has an IO error.","","","","","","","","","","","","This module contains the Parser error definitions.","This module contains the Parser warning definitions.","","","ParserError enum that represents all the errors for the …","","","","","","","","","","When the lexer could not lex some text.","","","","","","","Returns the argument unchanged.","","When the user tries to pass an implicit value.","For when a user specified more than one mode on a …","Calls U::from(self)
.","For when the parser encountered an invalid address literal.","","For when the parser encountered an empty import list.","Parsed an unknown method call on the type of an expression.","","","","For when the lexer encountered a bidi override character","When a block comment is not closed before end of file.","When a block comment is empty.","When more input was expected but not found.","When an integer is started with a leading zero.","When a hex number is provided.","When a string is not properly closed.","","","For when the parser encountered a mix of commas and …","","","","","For when the parser encountered an unexpected spread in an …","","","","","Enforce that tuple index must not have leading 0, or …","","","For when the parser encountered an unexpected list of …","For when the parser encountered an unexpected End of File.","For when the parser encountered an unexpected identifier.","For when the parser encountered an unexpected statement.","For when the parser encountered an unexpected string.","For when the parser encountered an unexpected token.","For when the parser encountered an unexpected whitespace.","","","","ParserWarning enum that represents all the warnings for …","","","","","","For when a user used const on a parameter or input instead …","For when a keyword is deprecated but could be used as a …","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","This module contains the Input error definitions.","","","InputError enum that represents all the errors for the …","","","","","","","","","For when the user tries to assign to a const input.","For when the user tries to assign to a const input.","","","","","","","","","","","For when a struct is created with the same name as a core …","For when the type checker cannot determine the type of an …","","","Attempted to define more that one record variable with the …","Attempted to define more that one struct member with the …","","","For when one of the following types was expected.","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","For when a function doesn’t have a return statement.","","For when the user tries calls a function with the …","","For when the user tries initialize a struct with the …","","","Calls U::from(self)
.","For when the parser encountered an invalid assignment …","A call to an invalid associated constant is made e.g., …","For when an invalid field of block is called.","For when an invalid core constant is called.","For when an invalid core function is used.","An invalid access call is made e.g., `SHA256::hash()","For when an integer is not in a valid range.","","","","","Attempted to access an invalid struct variable.","","","","","","","","","","","","","","","For when the user is missing a struct member during …","","","","","","","","","","","","","","","","","","","","","","For when the user tries to assign to a const input.","Attempted to access an invalid struct.","","","For when the user tries to return a unknown variable.","",""],"i":[0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,50,50,50,50,50,50,50,0,0,0,0,0,0,0,0,22,23,19,20,18,22,23,19,20,18,18,18,19,20,18,34,22,23,19,18,34,22,23,19,18,23,19,23,19,18,18,19,20,20,22,23,19,20,18,19,19,22,23,19,20,18,20,34,22,23,18,20,19,22,19,18,19,20,18,20,22,23,19,20,18,22,23,19,20,18,22,23,19,20,18,23,19,19,21,21,21,21,51,21,21,21,0,0,21,51,21,21,25,0,21,0,21,25,21,25,0,0,21,25,21,0,21,21,25,25,21,21,21,21,21,21,21,21,21,21,21,25,25,0,21,25,0,0,0,21,25,21,25,21,25,21,25,0,21,25,0,0,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,0,42,0,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,0,45,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,41,0,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,0,41,41,0,44,44,0,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,0,43,43,0,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,0,37,37,0,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,0,0,39,39,0,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,46,46,0,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,0,40,40,0,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40],"f":[0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,1],[[-1,-2],2,[],[]],0,0,[[],1],[1,3],[[1,1],4],0,[1,5],[1,6],[[1,7],8],[[1,7],8],[-1,-1,[]],[[1,-1],2,9],0,[-1,-2,[],[]],0,[[-1,[10,[5]],6,11,5,4,12],1,13],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],0,[-1,15,[]],[1,5],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[16,16],[[-1,-2],2,[],[]],[[],16],[16,3],[[16,16],4],[16,5],[16,6],[[16,7],8],[[16,7],8],[-1,-1,[]],[[16,-1],2,9],[-1,-2,[],[]],[[-1,[10,[5]],6,11,5,4,17,12],16,13],0,[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[16,5],0,[[],11],[[],6],[-1,5,[]],[-1,6,[]],[[],4],[[],5],[-1,5,[]],0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[18,18],[[-1,-2],2,[],[]],[[],19],[[],[[20,[-1]]],[]],[[],18],[[-1,21],2,[]],[[22,21],2],[[23,21],2],[[19,-1],2,[[24,[21]]]],[[18,21],2],[[-1,25],2,[]],[[22,25],2],[[23,25],2],[[19,25],2],[[18,25],2],0,[19,26],0,[[19,[14,[-1,21]]],[[14,[-1,2]]],[]],[18,27],[18,28],[[19,21],29],[[[20,[-1]],7],8,30],[[[20,[-1]],7],8,31],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[19,4],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[20,[-1]]],[[32,[-1]]],[]],[-1,[[10,[6]]],[]],[22,[[10,[6]]]],[23,[[10,[6]]]],[18,[[10,[6]]]],[[[20,[-1]]],[[10,[-1]]],[]],[19,[[14,[2,[33,[21]]]]]],0,[[[33,[34]]],19],[[],18],[[],[[2,[19,18]]]],[[[20,[-1]],-1],2,[]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[-1,15,[]],[-1,15,[]],[-1,15,[]],[-1,15,[]],0,[19,26],[-1,[[14,[-2,27]]],35,[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[21,5],[25,5],[21,6],0,[[21,7],8],[[21,7],8],[[25,7],8],[[25,7],8],[36,21],[37,21],[38,21],[39,21],[40,21],[-1,-1,[]],[41,21],[42,21],[43,21],[44,21],[45,21],[-1,-1,[]],[46,25],0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[21,[[10,[47]]]],[25,[[10,[47]]]],[-1,5,[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],0,[-1,15,[]],[-1,15,[]],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[38,38],[[-1,-2],2,[],[]],[[],6],[38,5],[38,6],[-1,38,47],[-1,38,47],[-1,38,47],[-1,38,47],[[-1,-2],38,30,47],[[-1,-2],38,30,47],[[-1,-2],38,30,47],[-1,38,47],[-1,38,47],[[-1,-2],38,30,47],[[-1,-2],38,30,47],[[38,7],8],[[38,7],8],[-1,-1,[]],[16,38],[1,38],[-1,-2,[],[]],[[],4],[[],5],[[],6],[[-1,17],38,31],[[-1,17],38,31],[[-1,17],38,31],[[-1,17],38,31],[38,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[38,5],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,42,47],[42,42],[[-1,-2],2,[],[]],[[],6],[-1,42,47],[42,5],[42,6],[[],42],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[-1,42,31],[[42,7],8],[[42,7],8],[16,42],[-1,-1,[]],[1,42],[-1,-2,[],[]],[[],4],[[],5],[[],42],[[],6],[[-1,-2],42,31,31],[-1,42,47],[-1,42,47],[42,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[42,5],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[-1,17],45,47],[45,45],[[-1,-2],2,[],[]],[[],6],[45,5],[45,6],[[-1,-2],45,30,47],[[45,7],8],[[45,7],8],[16,45],[-1,-1,[]],[1,45],[[-1,17],45,31],[[-1,17],45,31],[-1,-2,[],[]],[[],4],[[],5],[[],6],[[-1,-2,17],45,31,31],[[-1,-2,17],45,31,31],[45,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[45,5],0,0,0,0,[[-1,-2,-3,-4,17],41,31,31,31,31],[-1,-2,[],[]],[-1,-2,[],[]],[41,41],[[-1,-2],2,[],[]],[[],6],[41,5],[41,6],[[41,7],8],[[41,7],8],[-1,-1,[]],[1,41],[16,41],[-1,-2,[],[]],[[],4],[[-1,17],41,31],[[],5],[[],6],[41,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[-1,3,[]],[[-1,-2,17],41,31,31],[41,5],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[44,44],[[-1,-2],2,[],[]],[[],6],[44,5],[44,6],[[44,7],8],[[44,7],8],[1,44],[16,44],[-1,-1,[]],[[-1,17],44,31],[-1,-2,[],[]],[[],4],[[],5],[[],6],[44,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[[[48,[-1]],-2,17],44,31,31],[[-1,-2,17],44,31,31],[44,5],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[43,43],[[-1,-2],2,[],[]],[[],6],[43,5],[43,6],[[43,7],8],[[43,7],8],[-1,-1,[]],[1,43],[16,43],[-1,-2,[],[]],[[],4],[17,43],[[],5],[[],6],[43,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[17,43],[43,5],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[37,37],[[-1,-2],2,[],[]],[[],6],[[-1,-2],37,31,31],[[],37],[37,5],[37,6],[-1,37,31],[[-1,-2],37,31,47],[-1,37,47],[-1,37,47],[[],37],[-1,37,47],[[-1,-2],37,30,47],[-1,37,47],[-1,37,30],[[-1,-2],37,31,30],[-1,37,31],[-1,37,31],[-1,37,30],[-1,37,30],[[-1,-2],37,31,47],[-1,37,30],[-1,37,47],[-1,37,30],[-1,37,31],[-1,37,30],[-1,37,30],[[-1,-2],37,31,47],[-1,37,30],[[-1,-2],37,31,47],[-1,37,31],[[37,7],8],[[37,7],8],[16,37],[1,37],[-1,-1,[]],[-1,-2,[],[]],[[-1,49],37,30],[[-1,-2],37,30,30],[-1,37,31],[-1,37,47],[-1,37,47],[-1,37,47],[-1,37,47],[-1,37,47],[-1,37,47],[[],4],[[],5],[[],6],[37,[[10,[47]]]],[[],37],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[37,5],0,0,0,0,0,[[-1,17],39,31],[17,39],[-1,-2,[],[]],[-1,-2,[],[]],[17,39],[39,39],[[-1,-2],2,[],[]],[[],6],[17,39],[-1,39,31],[39,5],[39,6],[17,39],[[39,7],8],[[39,7],8],[16,39],[-1,-1,[]],[1,39],[[-1,17],39,31],[17,39],[-1,-2,[],[]],[[-1,17],39,31],[[-1,17],39,31],[17,39],[[-1,-2,-3,17],39,31,31,31],[17,39],[[],4],[17,39],[[],39],[-1,39,31],[[],39],[[],39],[-1,39,31],[-1,39,31],[-1,39,31],[[],5],[17,39],[17,39],[[],6],[17,39],[39,[[10,[47]]]],[17,39],[17,39],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[[-1,17],39,31],[[-1,17],39,31],[-1,15,[]],[[-1,-2,17],39,31,31],[17,39],[[-1,[48,[-2]],17],39,31,31],[[-1,-2,17],39,31,31],[[-1,-2,17],39,31,31],[[-1,17],39,31],[[-1,-2,17],39,31,31],[39,5],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[46,46],[[-1,-2],2,[],[]],[[],6],[17,46],[[-1,-2,17],46,31,31],[46,5],[46,6],[[46,7],8],[[46,7],8],[16,46],[-1,-1,[]],[1,46],[-1,-2,[],[]],[[],4],[[],5],[[],6],[46,[[10,[47]]]],[-1,-2,[],[]],[-1,5,[]],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[-1,15,[]],[46,5],0,0,0,0,[17,40],[17,40],[17,40],[[-1,-2,17],40,31,31],[17,40],[-1,-2,[],[]],[-1,-2,[],[]],[17,40],[[-1,17],40,31],[[-1,17],40,31],[17,40],[17,40],[17,40],[40,40],[[-1,-2],2,[],[]],[[],6],[[-1,17],40,31],[[-1,17],40,31],[17,40],[17,40],[[-1,17],40,31],[[-1,17],40,31],[[[32,[-1]]],40,31],[[[32,[-1]]],40,31],[[-1,17],40,31],[[-1,17],40,31],[40,5],[40,6],[[-1,-2,17],40,31,31],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[[-1,-2,17],40,31,31],[17,40],[17,40],[17,40],[[40,7],8],[[40,7],8],[16,40],[-1,-1,[]],[1,40],[17,40],[17,40],[[-1,17],40,31],[17,40],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[-1,-2,[],[]],[17,40],[[-1,17],40,31],[17,40],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[[-1,17],40,31],[[-1,-2,17],40,31,31],[[-1,-2,17],40,31,31],[[-1,17],40,31],[[-1,17],40,31],[17,40],[[-1,-2,17],40,31,31],[17,40],[[-1,17],40,31],[[],4],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[17,40],[[],5],[17,40],[17,40],[[-1,-2,17],40,31,31],[17,40],[17,40],[[],6],[17,40],[17,40],[[-1,-2,17],40,31,31],[17,40],[[-1,-2,17],40,31,31],[40,[[10,[47]]]],[17,40],[17,40],[[-1,-2,17],40,31,31],[-1,-2,[],[]],[-1,5,[]],[[-1,17],40,31],[[-1,17],40,31],[17,40],[-1,[[14,[-2]]],[],[]],[-1,[[14,[-2]]],[],[]],[[-1,-2,17],40,31,31],[-1,15,[]],[[-1,-2,17],40,31,31],[[-1,17],40,31],[17,40],[[-1,17],40,31],[[-1,-2,17],40,31,31],[17,40],[40,5]],"c":[],"p":[[3,"Backtraced",8],[15,"tuple"],[15,"str"],[15,"bool"],[3,"String",701],[15,"i32"],[3,"Formatter",702],[6,"Result",702],[8,"Hasher",703],[4,"Option",704],[15,"i8"],[3,"Backtrace",705],[8,"ToString",701],[4,"Result",706],[3,"TypeId",707],[3,"Formatted",38],[3,"Span",708],[3,"BufferEmitter",70],[3,"Handler",70],[3,"Buffer",70],[4,"LeoError",156],[3,"StderrEmitter",70],[3,"HandlerInner",70],[8,"Into",709],[4,"LeoWarning",156],[15,"usize"],[6,"ErrBuffer",70],[6,"WarningBuffer",70],[15,"never"],[8,"Debug",702],[8,"Display",702],[3,"Vec",710],[3,"Box",711],[8,"Emitter",70],[8,"FnOnce",712],[3,"Error",713],[4,"PackageError",432],[4,"AstError",219],[4,"ParserError",497],[4,"TypeCheckerError",587],[4,"FlattenError",342],[4,"CliError",261],[4,"LoopUnrollerError",403],[4,"InputError",373],[4,"CompilerError",309],[4,"ParserWarning",558],[8,"Error",714],[15,"slice"],[3,"FileType",715],[8,"LeoMessageCode",62],[6,"Result",156]],"b":[[23,"impl-Display-for-Backtraced"],[24,"impl-Debug-for-Backtraced"],[49,"impl-Debug-for-Formatted"],[50,"impl-Display-for-Formatted"],[110,"impl-Debug-for-Buffer%3CT%3E"],[111,"impl-Display-for-Buffer%3CT%3E"],[184,"impl-Display-for-LeoError"],[185,"impl-Debug-for-LeoError"],[186,"impl-Display-for-LeoWarning"],[187,"impl-Debug-for-LeoWarning"],[188,"impl-From%3CError%3E-for-LeoError"],[189,"impl-From%3CPackageError%3E-for-LeoError"],[190,"impl-From%3CAstError%3E-for-LeoError"],[191,"impl-From%3CParserError%3E-for-LeoError"],[192,"impl-From%3CTypeCheckerError%3E-for-LeoError"],[194,"impl-From%3CFlattenError%3E-for-LeoError"],[195,"impl-From%3CCliError%3E-for-LeoError"],[196,"impl-From%3CLoopUnrollerError%3E-for-LeoError"],[197,"impl-From%3CInputError%3E-for-LeoError"],[198,"impl-From%3CCompilerError%3E-for-LeoError"],[240,"impl-Display-for-AstError"],[241,"impl-Debug-for-AstError"],[243,"impl-From%3CFormatted%3E-for-AstError"],[244,"impl-From%3CBacktraced%3E-for-AstError"],[288,"impl-Debug-for-CliError"],[289,"impl-Display-for-CliError"],[290,"impl-From%3CFormatted%3E-for-CliError"],[292,"impl-From%3CBacktraced%3E-for-CliError"],[321,"impl-Display-for-CompilerError"],[322,"impl-Debug-for-CompilerError"],[323,"impl-From%3CFormatted%3E-for-CompilerError"],[325,"impl-From%3CBacktraced%3E-for-CompilerError"],[353,"impl-Display-for-FlattenError"],[354,"impl-Debug-for-FlattenError"],[356,"impl-From%3CBacktraced%3E-for-FlattenError"],[357,"impl-From%3CFormatted%3E-for-FlattenError"],[383,"impl-Display-for-InputError"],[384,"impl-Debug-for-InputError"],[385,"impl-From%3CBacktraced%3E-for-InputError"],[386,"impl-From%3CFormatted%3E-for-InputError"],[413,"impl-Debug-for-LoopUnrollerError"],[414,"impl-Display-for-LoopUnrollerError"],[416,"impl-From%3CBacktraced%3E-for-LoopUnrollerError"],[417,"impl-From%3CFormatted%3E-for-LoopUnrollerError"],[469,"impl-Display-for-PackageError"],[470,"impl-Debug-for-PackageError"],[471,"impl-From%3CFormatted%3E-for-PackageError"],[472,"impl-From%3CBacktraced%3E-for-PackageError"],[513,"impl-Debug-for-ParserError"],[514,"impl-Display-for-ParserError"],[515,"impl-From%3CFormatted%3E-for-ParserError"],[517,"impl-From%3CBacktraced%3E-for-ParserError"],[570,"impl-Debug-for-ParserWarning"],[571,"impl-Display-for-ParserWarning"],[572,"impl-From%3CFormatted%3E-for-ParserWarning"],[574,"impl-From%3CBacktraced%3E-for-ParserWarning"],[631,"impl-Display-for-TypeCheckerError"],[632,"impl-Debug-for-TypeCheckerError"],[633,"impl-From%3CFormatted%3E-for-TypeCheckerError"],[635,"impl-From%3CBacktraced%3E-for-TypeCheckerError"]]},\
"leo_lang":{"doc":"Table of Contents","t":"AEDDDDIGEDNQNDNQDRNNDAKAAAMAMMAMMMMMMMMMMMMMMMMMAAFAMMMAMMMAMMMKMMAFAAMMMMENNMMMMDMDNNDNENNNNNLLLLLLLLLLMLLMLLLLLLLLLLLLLLLFLLLLLMMFLLLLLLLLLLLLMMMMMMMMCCDCICCQCQCCAKLLLLAALLLLLLLLMMMMMMMMMMMMMMMAALLLLLLLLLLLAMKALLLLLLALLLENNLLLLLLLLLLLLLLLLLLFLLLLLLFMMMMDLLLLLLLFLLLLLLLLLLLMLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLENNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLMLLLMLLLLLLMLLMLLLLLLLDLLLLLLLLLLLLLLLLLLMLLLLLLLDLLLLLLLMLLLLLLLLLMLLMLLLLLLLDLLLLLLLLLLLLLLLLLMLLMLLLLLLDMENNNDMMMMAAADLLLLLLLLLLLLLMLLLLLDHMLLLLLLLMMMMLLMLLLFLMLLLLLLLLLLLLSSSDLLLLLLLLLLLLLLLLDMMMMMMFMDMDMMMDMMD","n":["cli","Account","Build","BuildOptions","CLI","Clean","Command","CurrentNetwork","Example","Execute","Import","Input","Lottery","New","New","Output","Run","SNARKVM_COMMAND","TicTacToe","Token","Update","account","apply","build","clean","cli","command","commands","compiler_options","compiler_options","context","debug","enable_all_ast_snapshots","enable_ast_spans","enable_dce","enable_dce_ast_snapshot","enable_destructured_ast_snapshot","enable_flattened_ast_snapshot","enable_initial_ast_snapshot","enable_initial_input_ast_snapshot","enable_initial_symbol_table_snapshot","enable_inlined_ast_snapshot","enable_ssa_ast_snapshot","enable_symbol_table_spans","enable_type_checked_symbol_table_snapshot","enable_unrolled_ast_snapshot","enable_unrolled_symbol_table_snapshot","endpoint","example","execute","handle_error","helpers","inputs","inputs","list","logger","name","name","name","new","offline","options","path","prelude","quiet","quiet","run","run_with_args","update","updater","private_key","seed","write","write","Account","Import","New","private_key","seed","write","write","Build","options","Clean","Account","Build","CLI","Clean","Commands","Example","Execute","New","Run","Update","augment_args","augment_args_for_update","augment_subcommands","augment_subcommands_for_update","borrow","borrow","borrow_mut","borrow_mut","command","command","command","command_for_update","command_for_update","debug","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","from","from","from_arg_matches","from_arg_matches","from_arg_matches_mut","from_arg_matches_mut","group_id","handle_error","has_subcommand","init","init","into","into","path","quiet","run_with_args","try_from","try_from","try_into","try_into","type_id","type_id","update_from_arg_matches","update_from_arg_matches","update_from_arg_matches_mut","update_from_arg_matches_mut","vzip","vzip","command","command","command","command","command","command","command","command","Account","Build","BuildOptions","Clean","Command","Example","Execute","Input","New","Output","Run","Update","account","apply","augment_args","augment_args_for_update","borrow","borrow_mut","build","clean","clone","clone_into","command","command_for_update","default","deref","deref_mut","drop","enable_all_ast_snapshots","enable_ast_spans","enable_dce","enable_dce_ast_snapshot","enable_destructured_ast_snapshot","enable_flattened_ast_snapshot","enable_initial_ast_snapshot","enable_initial_input_ast_snapshot","enable_initial_symbol_table_snapshot","enable_inlined_ast_snapshot","enable_ssa_ast_snapshot","enable_symbol_table_spans","enable_type_checked_symbol_table_snapshot","enable_unrolled_ast_snapshot","enable_unrolled_symbol_table_snapshot","example","execute","execute","execute","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","into","log_span","log_span","new","offline","prelude","run","to_owned","try_execute","try_execute","try_from","try_into","type_id","update","update_from_arg_matches","update_from_arg_matches_mut","vzip","Account","Import","New","apply","augment_subcommands","augment_subcommands_for_update","borrow","borrow_mut","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","has_subcommand","init","into","prelude","print_keys","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","write_to_env_file","private_key","seed","write","write","Build","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","compile_leo_file","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","into","log_span","options","prelude","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Clean","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","into","log_span","prelude","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Example","Lottery","TicTacToe","Token","apply","augment_subcommands","augment_subcommands_for_update","borrow","borrow_mut","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","has_subcommand","init","input_file_string","into","main_file_string","name","prelude","readme_file_string","run_file_string","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Execute","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","compiler_options","deref","deref_mut","drop","endpoint","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","inputs","into","log_span","name","prelude","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","New","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","into","log_span","name","prelude","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Run","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","compiler_options","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","inputs","into","log_span","name","prelude","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Update","apply","augment_args","augment_args_for_update","borrow","borrow_mut","command","command_for_update","deref","deref_mut","drop","fmt","from","from_arg_matches","from_arg_matches_mut","group_id","init","into","list","log_span","prelude","quiet","try_from","try_into","type_id","update_from_arg_matches","update_from_arg_matches_mut","vzip","Context","path","Example","Lottery","TicTacToe","Token","Execute","compiler_options","endpoint","inputs","name","context","logger","updater","Context","borrow","borrow_mut","clone","clone_into","deref","deref_mut","dir","drop","from","init","into","new","open_manifest","path","to_owned","try_from","try_into","type_id","vzip","Format","START","ansi","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","display_level","display_target","display_thread_id","display_thread_name","drop","fmt","format","format_event","from","init","init_logger","into","timer","to_owned","try_from","try_into","type_id","vzip","with_ansi","with_level","with_target","with_thread_ids","with_thread_names","with_timer","without_time","LEO_BIN_NAME","LEO_REPO_NAME","LEO_REPO_OWNER","Updater","borrow","borrow_mut","deref","deref_mut","drop","from","init","into","print_cli","show_available_releases","try_from","try_into","type_id","update_available","update_to_latest_release","vzip","Format","ansi","display_level","display_target","display_thread_id","display_thread_name","format","init_logger","timer","New","name","Run","compiler_options","inputs","name","Update","list","quiet","Updater"],"q":[[0,"leo_lang"],[1,"leo_lang::cli"],[70,"leo_lang::cli::Account"],[74,"leo_lang::cli::account"],[77,"leo_lang::cli::account::Account"],[81,"leo_lang::cli::build"],[83,"leo_lang::cli::clean"],[84,"leo_lang::cli::cli"],[144,"leo_lang::cli::cli::Commands"],[152,"leo_lang::cli::commands"],[222,"leo_lang::cli::commands::account"],[251,"leo_lang::cli::commands::account::Account"],[255,"leo_lang::cli::commands::build"],[283,"leo_lang::cli::commands::clean"],[309,"leo_lang::cli::commands::example"],[342,"leo_lang::cli::commands::execute"],[372,"leo_lang::cli::commands::new"],[399,"leo_lang::cli::commands::run"],[428,"leo_lang::cli::commands::update"],[456,"leo_lang::cli::context"],[458,"leo_lang::cli::example"],[462,"leo_lang::cli::execute"],[467,"leo_lang::cli::helpers"],[470,"leo_lang::cli::helpers::context"],[490,"leo_lang::cli::helpers::logger"],[525,"leo_lang::cli::helpers::updater"],[545,"leo_lang::cli::logger"],[554,"leo_lang::cli::new"],[556,"leo_lang::cli::run"],[560,"leo_lang::cli::update"],[563,"leo_lang::cli::updater"],[564,"leo_errors::errors"],[565,"core::marker"],[566,"clap_builder::builder::command"],[567,"core::fmt"],[568,"core::fmt"],[569,"clap_builder"],[570,"core::result"],[571,"clap_builder::util::id"],[572,"core::option"],[573,"core::any"],[574,"tracing::span"],[575,"snarkvm_console_network::testnet3"],[576,"snarkvm_console_account::private_key"],[577,"std::path"],[578,"std::path"],[579,"leo_errors::emitter"],[580,"leo_span::symbol"],[581,"leo_ast::struct"],[582,"indexmap::map"],[583,"alloc::string"],[584,"snarkvm::file::manifest"],[585,"core::clone"],[586,"tracing_subscriber::fmt::format"],[587,"tracing_subscriber::fmt::time"],[588,"core::fmt"],[589,"tracing_subscriber::fmt::format"],[590,"tracing_subscriber::fmt::time"],[591,"tracing_subscriber::registry"],[592,"tracing_subscriber::fmt::format"]],"d":["","Commands to manage Aleo accounts.","Compile and build program command.","Compiler Options wrapper for Build command. Also used by …","CLI Arguments entry point - includes global parameters and …","Clean outputs folder command","Base trait for the Leo CLI, see methods and their …","","The example programs that can be generated.","Build, Prove and Run Leo program with inputs","Derive an Aleo account from a private key.","If the current command requires running another command …","","Create new Leo project","Generates a new Aleo account","Defines the output of this command, which may be used as …","Build, Prove and Run Leo program with inputs","","","","Update Leo to the latest version","","Runs the main operation of this command. This function is …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Lists all available versions of Leo","","","","","","","","","Runs the prelude and returns the Input of the current …","","Suppress outputs to terminal","","Run command with custom build arguments.","","","Private key plaintext","Seed the RNG with a numeric value.","Write the private key to the .env file.","Write the private key to the .env file.","Commands to manage Aleo accounts.","Derive an Aleo account from a private key.","Generates a new Aleo account","Private key plaintext","Seed the RNG with a numeric value.","Write the private key to the .env file.","Write the private key to the .env file.","Compile and build program command.","","Clean outputs folder command","","","CLI Arguments entry point - includes global parameters and …","","Leo compiler and package manager","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Calls U::from(self)
.","Calls U::from(self)
.","","","Run command with custom build arguments.","","","","","","","","","","","","","","","","","","","","","","","Compiler Options wrapper for Build command. Also used by …","","Base trait for the Leo CLI, see methods and their …","","","If the current command requires running another command …","","Defines the output of this command, which may be used as …","","","","Runs the main operation of this command. This function is …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A wrapper around the apply
method. This function sets up …","A wrapper around the apply
method. This function sets up …","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Adds a span to the logger via tracing::span
. Because of …","Adds a span to the logger via tracing::span
. Because of …","","","Runs the prelude and returns the Input of the current …","","","Executes command but empty the result. Comes in handy …","Executes command but empty the result. Comes in handy …","","","","","","","","Commands to manage Aleo accounts.","Derive an Aleo account from a private key.","Generates a new Aleo account","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","Private key plaintext","Seed the RNG with a numeric value.","Write the private key to the .env file.","Write the private key to the .env file.","Compile and build program command.","","","","","","","","Compiles a Leo file in the src/
directory.","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","Clean outputs folder command","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","The example programs that can be generated.","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Calls U::from(self)
.","","","","","","","","","","","","Build, Prove and Run Leo program with inputs","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Calls U::from(self)
.","","","","","","","","","","Create new Leo project","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","","","","","","","","","","Build, Prove and Run Leo program with inputs","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","Calls U::from(self)
.","","","","","","","","","","Update Leo to the latest version","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self)
.","Lists all available versions of Leo","","","Suppress outputs to terminal","","","","","","","Project context, manifest, current directory etc All the …","Path at which the command is called, None when default","The example programs that can be generated.","","","","Build, Prove and Run Leo program with inputs","","","","","","","","Project context, manifest, current directory etc All the …","","","","","","","Returns the path to the Leo package.","","Returns the argument unchanged.","","Calls U::from(self)
.","","Returns the package name as a String. Opens the manifest …","Path at which the command is called, None when default","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Initialize logger with custom format and verbosity.","Calls U::from(self)
.","","","","","","","Enable ANSI terminal colors for formatted output.","Sets whether or not an event’s level is displayed.","Sets whether or not an event’s target is displayed.","Sets whether or not the thread ID of the current thread is …","Sets whether or not the name of the current thread is …","Use the given timer
for log message timestamps.","Do not emit timestamps with log messages.","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Display the CLI message, if the Leo configuration allows.","Show all available releases for leo
.","","","","Check if there is an available update for leo
and return …","Update leo
to the latest release.","","","","","","","","","Initialize logger with custom format and verbosity.","","Create new Leo project","","Build, Prove and Run Leo program with inputs","","","","Update Leo to the latest version","Lists all available versions of Leo","Suppress outputs to terminal",""],"i":[0,0,0,0,0,0,0,0,0,0,21,53,33,0,21,53,0,0,33,33,0,0,53,0,0,0,4,0,35,37,0,4,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,35,0,0,0,0,35,37,38,0,35,36,37,0,19,24,4,53,4,38,0,0,0,0,54,55,55,54,0,21,21,54,55,55,54,0,24,0,10,10,0,10,0,10,10,10,10,10,4,4,10,10,4,10,4,10,4,10,4,4,10,4,4,10,4,10,4,10,4,10,4,10,4,10,4,10,4,0,10,4,10,4,10,4,4,0,4,10,4,10,4,10,4,10,4,10,4,10,56,57,58,59,60,61,62,63,0,0,0,0,0,0,0,53,0,53,0,0,0,53,19,19,19,19,0,0,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,0,0,53,53,19,19,19,19,19,19,19,53,53,0,19,53,0,19,53,53,19,19,19,0,19,19,19,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,21,21,21,21,21,21,0,54,55,55,54,0,24,24,24,24,24,24,24,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,0,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,0,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,0,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,0,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,0,1,0,33,33,33,0,35,35,35,35,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,0,40,40,40,40,40,40,40,40,40,40,40,40,40,40,64,64,64,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,40,40,40,40,40,40,0,40,0,36,0,37,37,37,0,38,38,0],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,3],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[2,[-1]]],-1,[]],0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,3],0,0,0,[4,[[2,[5]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[6,6],[6,6],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],0,[[],6],[[],6],0,[7,-1,[]],[7,-1,[]],[7,-1,[]],[7,-1,[]],[7,5],[7,5],[[4,8],9],[[10,8],9],[-1,-1,[]],[-1,-1,[]],[11,[[13,[4,12]]]],[11,[[13,[10,12]]]],[11,[[13,[4,12]]]],[11,[[13,[10,12]]]],[[],[[15,[14]]]],[[[2,[-1]]],-1,[]],[16,17],[[],7],[[],7],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[4,[[2,[5]]]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[-1,18,[]],[[4,11],[[13,[5,12]]]],[[10,11],[[13,[5,12]]]],[[4,11],[[13,[5,12]]]],[[10,11],[[13,[5,12]]]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,3],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[19,19],[[-1,-2],5,[],[]],[[],6],[[],6],[[],19],[7,-1,[]],[7,-1,[]],[7,5],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,1],2,3],[[-1,1],2,3],[[19,8],9],[-1,-1,[]],[11,[[13,[19,12]]]],[11,[[13,[19,12]]]],[[],[[15,[14]]]],[[],7],[-1,-2,[],[]],[-1,20,[]],[-1,20,[]],0,0,[[-1,1],2,3],0,[-1,-2,[],[]],[[-1,1],[[2,[5]]],3],[[-1,1],[[2,[5]]],3],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],0,[[19,11],[[13,[5,12]]]],[[19,11],[[13,[5,12]]]],[-1,-2,[],[]],0,0,0,[[21,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[7,-1,[]],[7,-1,[]],[7,5],[[21,8],9],[-1,-1,[]],[11,[[13,[21,12]]]],[11,[[13,[21,12]]]],[16,17],[[],7],[-1,-2,[],[]],[[21,1],2],[[[23,[22]]],[[2,[5]]]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[21,11],[[13,[5,12]]]],[[21,11],[[13,[5,12]]]],[-1,-2,[],[]],[[[23,[22]],1],[[2,[5]]]],0,0,0,0,0,[[24,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[[25,26,[27,[22]],26,26,28,19,17],[[2,[[31,[29,30]]]]]],[7,-1,[]],[7,-1,[]],[7,5],[[24,8],9],[-1,-1,[]],[11,[[13,[24,12]]]],[11,[[13,[24,12]]]],[[],[[15,[14]]]],[[],7],[-1,-2,[],[]],[24,20],0,[[24,1],2],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[24,11],[[13,[5,12]]]],[[24,11],[[13,[5,12]]]],[-1,-2,[],[]],0,[[32,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[7,-1,[]],[7,-1,[]],[7,5],[[32,8],9],[-1,-1,[]],[11,[[13,[32,12]]]],[11,[[13,[32,12]]]],[[],[[15,[14]]]],[[],7],[-1,-2,[],[]],[32,20],[[32,1],2],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[32,11],[[13,[5,12]]]],[[32,11],[[13,[5,12]]]],[-1,-2,[],[]],0,0,0,0,[[33,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[7,-1,[]],[7,-1,[]],[7,5],[[33,8],9],[-1,-1,[]],[11,[[13,[33,12]]]],[11,[[13,[33,12]]]],[16,17],[[],7],[33,34],[-1,-2,[],[]],[33,34],[33,34],[[33,1],2],[33,34],[33,34],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[33,11],[[13,[5,12]]]],[[33,11],[[13,[5,12]]]],[-1,-2,[],[]],0,[[35,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],0,[7,-1,[]],[7,-1,[]],[7,5],0,[[35,8],9],[-1,-1,[]],[11,[[13,[35,12]]]],[11,[[13,[35,12]]]],[[],[[15,[14]]]],[[],7],0,[-1,-2,[],[]],[35,20],0,[[35,1],2],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[35,11],[[13,[5,12]]]],[[35,11],[[13,[5,12]]]],[-1,-2,[],[]],0,[[36,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[7,-1,[]],[7,-1,[]],[7,5],[[36,8],9],[-1,-1,[]],[11,[[13,[36,12]]]],[11,[[13,[36,12]]]],[[],[[15,[14]]]],[[],7],[-1,-2,[],[]],[36,20],0,[[36,1],2],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[36,11],[[13,[5,12]]]],[[36,11],[[13,[5,12]]]],[-1,-2,[],[]],0,[[37,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],0,[7,-1,[]],[7,-1,[]],[7,5],[[37,8],9],[-1,-1,[]],[11,[[13,[37,12]]]],[11,[[13,[37,12]]]],[[],[[15,[14]]]],[[],7],0,[-1,-2,[],[]],[37,20],0,[[37,1],2],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[37,11],[[13,[5,12]]]],[[37,11],[[13,[5,12]]]],[-1,-2,[],[]],0,[[38,1],2],[6,6],[6,6],[-1,-2,[],[]],[-1,-2,[],[]],[[],6],[[],6],[7,-1,[]],[7,-1,[]],[7,5],[[38,8],9],[-1,-1,[]],[11,[[13,[38,12]]]],[11,[[13,[38,12]]]],[[],[[15,[14]]]],[[],7],[-1,-2,[],[]],0,[38,20],[[38,1],2],0,[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[38,11],[[13,[5,12]]]],[[38,11],[[13,[5,12]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,1],[[-1,-2],5,[],[]],[7,-1,[]],[7,-1,[]],[1,[[2,[25]]]],[7,5],[-1,-1,[]],[[],7],[-1,-2,[],[]],[[[15,[25]]],[[2,[1]]]],[1,[[2,[[39,[22]]]]]],0,[-1,-2,[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[-1,-2,[],[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[[40,[-1,-2]]],[[40,[-1,-2]]],41,41],[[-1,-2],5,[],[]],[[],[[40,[42,43]]]],[7,-1,[]],[7,-1,[]],0,0,0,0,[7,5],[[[40,[-1,-2]],8],9,44,44],0,[[[40,[42,-1]],[45,[-2,-3]],46,47],9,48,[49,50],51],[-1,-1,[]],[[],7],[[16,7],[[2,[5]]]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[-1,-2,[],[]],[[[40,[-1,-2]],17],[[40,[-1,-2]]],[],[]],[[[40,[-1,-2]],17],[[40,[-1,-2]]],[],[]],[[[40,[-1,-2]],17],[[40,[-1,-2]]],[],[]],[[[40,[-1,-2]],17],[[40,[-1,-2]]],[],[]],[[[40,[-1,-2]],17],[[40,[-1,-2]]],[],[]],[[[40,[-1,-2]],-3],[[40,[-1,-3]]],[],[],[]],[[[40,[-1,-2]]],[[40,[-1,5]]],[],[]],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[7,5],[-1,-1,[]],[[],7],[-1,-2,[],[]],[[],5],[[],[[2,[34]]]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,18,[]],[[],[[2,[34]]]],[17,[[2,[52]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,[[16,7],[[2,[5]]]],0,0,0,0,0,0,0,0,0,0,0],"c":[],"p":[[3,"Context",470],[6,"Result",564],[8,"Sized",565],[3,"CLI",84],[15,"tuple"],[3,"Command",566],[15,"usize"],[3,"Formatter",567],[6,"Result",567],[4,"Commands",84],[3,"ArgMatches",568],[6,"Error",569],[4,"Result",570],[3,"Id",571],[4,"Option",572],[15,"str"],[15,"bool"],[3,"TypeId",573],[3,"BuildOptions",152],[3,"Span",574],[4,"Account",222],[3,"Testnet3",575],[3,"PrivateKey",576],[3,"Build",255],[3,"PathBuf",577],[3,"Path",577],[3,"ProgramID",578],[3,"Handler",579],[3,"Symbol",580],[3,"Struct",581],[3,"IndexMap",582],[3,"Clean",283],[4,"Example",309],[3,"String",583],[3,"Execute",342],[3,"New",372],[3,"Run",399],[3,"Update",428],[3,"Manifest",584],[3,"Format",490],[8,"Clone",585],[3,"Full",586],[3,"SystemTime",587],[8,"Debug",567],[3,"FmtContext",588],[3,"Writer",586],[3,"Event",589],[8,"FormatTime",587],[8,"Subscriber",590],[8,"LookupSpan",591],[8,"FormatFields",586],[4,"Status",592],[8,"Command",152],[13,"Import",251],[13,"New",251],[13,"Account",144],[13,"New",144],[13,"Example",144],[13,"Build",144],[13,"Clean",144],[13,"Run",144],[13,"Execute",144],[13,"Update",144],[3,"Updater",525]],"b":[]},\
"leo_package":{"doc":"leo-package","t":"HAAAAAFAAAHDLLLLLLLLLLLLLLLAHDLLLLLLLLLLLLLLLLAAHDLLLLLLLLLLFLLLLHDLLLLLLLLLLLLMLLLLLLLLLHAAAAHNNNEDNLLLLLLLLLLLLLLLLLLLLLMLLMLLLLLLLLLLLLHDLLLLLLLLLLLMLLLLLLLLLHDLLLLLLLLLLLMLLLLLLLLLHDLLLLLLLLLLLLLLDMLLLLLMLLLLLLLLMMLLLLLMLAAHDMLLMLLLLLLLLLLLLLLLLLLHDLLLLLLLLLLLLLLLLLLLAAHDLLLLLLLLLLLLLLLHDLLLLLLLLLLLLMLLLLLLL","n":["LEO_FILE_EXTENSION","build","imports","inputs","outputs","package","parse_file_paths","root","source","directory","BUILD_DIRECTORY_NAME","BuildDirectory","borrow","borrow_mut","create","deref","deref_mut","drop","from","init","into","open","remove","try_from","try_into","type_id","vzip","directory","IMPORTS_DIRECTORY_NAME","ImportsDirectory","borrow","borrow_mut","create","deref","deref_mut","drop","files","from","init","into","is_empty","remove","try_from","try_into","type_id","vzip","directory","input","INPUTS_DIRECTORY_NAME","InputsDirectory","borrow","borrow_mut","create","deref","deref_mut","drop","files","from","init","into","parse_file_paths","try_from","try_into","type_id","vzip","INPUT_FILE_EXTENSION","InputFile","borrow","borrow_mut","deref","deref_mut","deserialize","drop","exists_at","filename","from","init","into","new","package_name","read_from","setup_file_path","take_from_value","template","try_from","try_into","type_id","vzip","write_to","MAIN_ALEO_FILE_NAME","ast_snapshot","checksum","circuit","directory","AST_SNAPSHOT_FILE_EXTENSION","Canonicalization","ImportsResolved","Initial","Snapshot","SnapshotFile","TypeInference","borrow","borrow","borrow_mut","borrow_mut","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","exists_at","fmt","from","from","init","init","into","into","new","package_name","read_from","remove","snapshot","snapshot_file_path","take_from_value","take_from_value","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","CHECKSUM_FILE_EXTENSION","ChecksumFile","borrow","borrow_mut","deref","deref_mut","deserialize","drop","exists_at","from","init","into","new","package_name","read_from","remove","setup_file_path","take_from_value","try_from","try_into","type_id","vzip","write_to","CIRCUIT_FILE_EXTENSION","CircuitFile","borrow","borrow_mut","deref","deref_mut","deserialize","drop","exists_at","from","init","into","new","package_name","read_from","remove","setup_file_path","take_from_value","try_from","try_into","type_id","vzip","write_to","OUTPUTS_DIRECTORY_NAME","OutputsDirectory","borrow","borrow_mut","create","deref","deref_mut","drop","from","init","into","remove","try_from","try_into","type_id","vzip","Package","_phantom","borrow","borrow_mut","can_initialize","deref","deref_mut","description","deserialize","drop","from","init","initialize","into","is_initialized","is_package_name_valid","license","name","new","take_from_value","try_from","try_into","type_id","version","vzip","env","gitignore","ENV_FILENAME","Env","_phantom","borrow","borrow_mut","data","default","deref","deref_mut","deserialize","drop","exists_at","from","from","init","into","new","take_from_value","template","try_from","try_into","type_id","vzip","write_to","GITIGNORE_FILENAME","Gitignore","borrow","borrow_mut","default","deref","deref_mut","deserialize","drop","exists_at","from","init","into","new","take_from_value","template","try_from","try_into","type_id","vzip","write_to","directory","main","SOURCE_DIRECTORY_NAME","SourceDirectory","borrow","borrow_mut","check_files","create","deref","deref_mut","drop","files","from","init","into","try_from","try_into","type_id","vzip","MAIN_FILENAME","MainFile","borrow","borrow_mut","deref","deref_mut","deserialize","drop","exists_at","filename","from","init","into","new","package_name","take_from_value","template","try_from","try_into","type_id","vzip","write_to"],"q":[[0,"leo_package"],[9,"leo_package::build"],[10,"leo_package::build::directory"],[27,"leo_package::imports"],[28,"leo_package::imports::directory"],[46,"leo_package::inputs"],[48,"leo_package::inputs::directory"],[65,"leo_package::inputs::input"],[89,"leo_package::outputs"],[94,"leo_package::outputs::ast_snapshot"],[138,"leo_package::outputs::checksum"],[161,"leo_package::outputs::circuit"],[184,"leo_package::outputs::directory"],[200,"leo_package::package"],[225,"leo_package::root"],[227,"leo_package::root::env"],[251,"leo_package::root::gitignore"],[272,"leo_package::source"],[274,"leo_package::source::directory"],[291,"leo_package::source::main"],[313,"std::fs"],[314,"std::path"],[315,"alloc::vec"],[316,"leo_errors::errors"],[317,"std::path"],[318,"core::result"],[319,"core::any"],[320,"serde::de"],[321,"alloc::borrow"],[322,"serde_json::value"],[323,"core::fmt"],[324,"core::fmt"],[325,"core::default"]],"d":["","","","","","","","","","","","","","","Creates a directory at the provided path with the default …","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Returns the path to the build directory if it exists.","Removes the directory at the provided path.","","","","","","","","","","Creates a directory at the provided path with the default …","","","","Returns a list of files in the imports directory.","Returns the argument unchanged.","","Calls U::from(self)
.","Returns true if the imports directory does not exist or …","Removes the directory at the provided path.","","","","","","The program.in
file.","","","","","Creates a directory at the provided path with the default …","","","","Returns a list of files in the input directory.","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","Reads the program input variables from the given file path …","","","","","","","","Writes the standard input format to a file.","","The serialized struct output file.","The build checksum file.","The serialized struct output file.","","","","","","Enum to handle all 3 types of snapshots.","Generic Snapshot file wrapper. Each package can have up to …","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","Reads the serialized struct from the given file path if it …","Removes the serialized struct at the given path if it …","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","Reads the checksum from the given file path if it exists.","Removes the checksum at the given path if it exists. …","","","","","","","Writes the given checksum to a file.","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","Reads the serialized struct from the given file path if it …","Removes the serialized struct at the given path if it …","","","","","","","Writes the given serialized struct to a file.","","","","","Creates a directory at the provided path with the default …","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Removes the directory at the provided path.","","","","","","","","","Returns true
if a package is can be initialized at a given …","","","","","","Returns the argument unchanged.","","Creates a Leo package at the given path","Calls U::from(self)
.","Returns true
if a package is initialized at the given path","Returns true
if the package name is valid.","","","","","","","","","","The .env
file.","The .gitignore
file.","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","The main.leo
file.","","","","","Check that the files in the source directory are valid.","Creates a directory at the provided path with the default …","","","","Returns a list of files in the source directory.","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,0,0,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,0,0,0,32,32,32,32,32,32,32,32,32,32,0,32,32,32,32,0,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,17,17,17,0,0,17,17,18,17,18,17,18,17,18,17,18,17,18,18,17,17,18,17,18,17,18,18,18,18,18,18,18,17,18,17,17,18,17,18,17,18,17,18,0,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,0,0,33,33,33,33,33,33,33,33,33,33,33,33,33,33,0,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,0,0,0,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,0,0,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,0,0,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29],"f":[0,0,0,0,0,0,[[1,[3,[2]]],[[5,[4]]]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[6,[[5,[2]]]],[7,-1,[]],[7,-1,[]],[7,4],[-1,-1,[]],[[],7],[-1,-2,[],[]],[6,[[5,[2]]]],[6,[[5,[8]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[6,[[5,[2]]]],[7,-1,[]],[7,-1,[]],[7,4],[6,[[5,[[3,[2]]]]]],[-1,-1,[]],[[],7],[-1,-2,[],[]],[6,[[5,[11]]]],[6,[[5,[8]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[6,[[5,[4]]]],[7,-1,[]],[7,-1,[]],[7,4],[6,[[5,[[3,[2]]]]]],[-1,-1,[]],[[],7],[-1,-2,[],[]],[[1,[3,[2]]],[[5,[4]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[-1,[[9,[12]]],13],[7,4],[[12,6],11],[12,8],[-1,-1,[]],[[],7],[-1,-2,[],[]],[14,12],0,[[12,6],[[5,[[4,[8,[15,[6]]]]]]]],[[12,6],[[15,[6]]]],[[16,14],[[9,[-1]]],[]],[12,8],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[12,6],[[5,[4]]]],0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[7,-1,[]],[7,-1,[]],[-1,[[9,[17]]],13],[-1,[[9,[18]]],13],[7,4],[7,4],[[18,6],11],[[17,19],20],[-1,-1,[]],[-1,-1,[]],[[],7],[[],7],[-1,-2,[],[]],[-1,-2,[],[]],[[14,17],18],0,[[18,6],[[5,[8]]]],[[18,6],[[5,[11]]]],0,[[18,6],[[15,[6]]]],[[16,14],[[9,[-1]]],[]],[[16,14],[[9,[-1]]],[]],[-1,8,[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[-1,[[9,[21]]],13],[7,4],[[21,6],11],[-1,-1,[]],[[],7],[-1,-2,[],[]],[14,21],0,[[21,6],[[5,[8]]]],[[21,6],[[5,[11]]]],[[21,6],[[15,[6]]]],[[16,14],[[9,[-1]]],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[21,6,8],[[5,[4]]]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[-1,[[9,[22]]],13],[7,4],[[22,6],11],[-1,-1,[]],[[],7],[-1,-2,[],[]],[14,22],0,[[22,6],[[5,[8]]]],[[22,6],[[5,[11]]]],[[22,6],[[15,[6]]]],[[16,14],[[9,[-1]]],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[22,6,8],[[5,[4]]]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[6,[[5,[2]]]],[7,-1,[]],[7,-1,[]],[7,4],[-1,-1,[]],[[],7],[-1,-2,[],[]],[6,[[5,[8]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[14,6],11],[7,-1,[]],[7,-1,[]],0,[-1,[[9,[[23,[-2]]]]],13,24],[7,4],[-1,-1,[]],[[],7],[[14,6],[[5,[4]]]],[-1,-2,[],[]],[[14,6],11],[14,11],0,0,[14,[[5,[[23,[-1]]]]],24],[[16,14],[[9,[-1]]],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,[[],[[25,[-1]]],[26,24]],[7,-1,[]],[7,-1,[]],[-1,[[9,[[25,[-2]]]]],13,24],[7,4],[6,11],[8,[[25,[-1]]],24],[-1,-1,[]],[[],7],[-1,-2,[],[]],[[],[[5,[[25,[-1]]]]],24],[[16,14],[[9,[-1]]],[]],[[],[[5,[8]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[[25,[-1]],6],[[5,[4]]],24],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[],27],[7,-1,[]],[7,-1,[]],[-1,[[9,[27]]],13],[7,4],[6,11],[-1,-1,[]],[[],7],[-1,-2,[],[]],[[],27],[[16,14],[[9,[-1]]],[]],[27,8],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[27,6],[[5,[4]]]],0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[[28,[2]]],[[5,[4]]]],[6,[[5,[4]]]],[7,-1,[]],[7,-1,[]],[7,4],[6,[[5,[[3,[2]]]]]],[-1,-1,[]],[[],7],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[7,-1,[]],[7,-1,[]],[-1,[[9,[29]]],13],[7,4],[6,11],[[],8],[-1,-1,[]],[[],7],[-1,-2,[],[]],[14,29],0,[[16,14],[[9,[-1]]],[]],[29,8],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],[[29,6],[[5,[4]]]]],"c":[],"p":[[3,"ReadDir",313],[3,"PathBuf",314],[3,"Vec",315],[15,"tuple"],[6,"Result",316],[3,"Path",314],[15,"usize"],[3,"String",317],[4,"Result",318],[3,"TypeId",319],[15,"bool"],[3,"InputFile",65],[8,"Deserializer",320],[15,"str"],[4,"Cow",321],[4,"Value",322],[4,"Snapshot",94],[3,"SnapshotFile",94],[3,"Formatter",323],[6,"Result",323],[3,"ChecksumFile",138],[3,"CircuitFile",161],[3,"Package",200],[8,"Network",324],[3,"Env",227],[8,"Default",325],[3,"Gitignore",251],[15,"slice"],[3,"MainFile",291],[3,"BuildDirectory",10],[3,"ImportsDirectory",28],[3,"InputsDirectory",48],[3,"OutputsDirectory",184],[3,"SourceDirectory",274]],"b":[]},\
-"leo_parser":{"doc":"The parser to convert Leo code text into an [AST
] type.","t":"RFFAAAAAAFFAARDMLLLLLLLLMLLLLLLLLLLLLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLRFRRCAAFFDLLLLLLLLLFFLLLLLFLMLLLMLLLLNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNNNNNNNNNNRNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["KEYWORD_TOKENS","parse_ast","parse_program_inputs","parser","tokenizer","context","expression","file","input","parse","parse_input","statement","type_","DUMMY_EOF","ParserContext","allow_identifier_underscores","bin_expr","borrow","borrow_mut","bump","check","check_int","deref","deref_mut","disallow_struct_construction","drop","eat","eat_any","eat_bin_op","eat_group_partial","eat_identifier","eat_whole_number","emit_err","emit_warning","expect","expect_any","expect_identifier","from","handler","has_next","init","into","look_ahead","mk_ident_prev","new","node_builder","parse_additive_expression","parse_annotation","parse_array_expression","parse_assert_statement","parse_assign_statement","parse_associated_access_expression","parse_bin_expr","parse_bitwise_and_expression","parse_bitwise_exclusive_or_expression","parse_bitwise_inclusive_or_expression","parse_block","parse_boolean_and_expression","parse_boolean_or_expression","parse_bracket_comma_list","parse_cast_expression","parse_conditional_expression","parse_conditional_statement","parse_console_statement","parse_const_declaration_statement","parse_definition_statement","parse_equality_expression","parse_exponential_expression","parse_expr_tuple","parse_expression","parse_function","parse_function_output","parse_import","parse_input","parse_input_definition","parse_input_file","parse_list","parse_loop_statement","parse_mapping","parse_member_variable_declaration","parse_method_call_expression","parse_mode","parse_multiplicative_expression","parse_ordering_expression","parse_output","parse_paren_comma_list","parse_postfix_expression","parse_primary_expression","parse_primitive_type","parse_program","parse_program_scope","parse_return_statement","parse_section","parse_shift_expression","parse_statement","parse_struct","parse_struct_init_expression","parse_struct_member","parse_struct_members","parse_tuple_expression","parse_type","parse_typed_ident","parse_unary_expression","peek_group_coordinate","peek_is_external","peek_is_left_par","prev_token","token","token_to_int_type","tokens","try_from","try_into","type_id","unexpected","unexpected_item","vzip","INT_TYPES","assert_no_whitespace","ASSIGN_TOKENS","TYPE_TOKENS","KEYWORD_TOKENS","lexer","token","tokenize","tokenize_iter","SpannedToken","borrow","borrow_mut","clone","clone_into","deref","deref_mut","deserialize","drop","dummy","eat_identifier","ensure_no_bidi_override","fmt","fmt","from","init","into","is_bidi_override","serialize","span","take_from_value","to_owned","to_string","token","try_from","try_into","type_id","vzip","Add","AddAssign","Address","AddressLit","And","AndAssign","Arrow","As","Assert","AssertEq","AssertNeq","Assign","At","BigArrow","BitAnd","BitAndAssign","BitOr","BitOrAssign","BitXor","BitXorAssign","Block","Bool","Brace","Bracket","Colon","Comma","CommentBlock","CommentLine","Console","Const","Constant","Delimiter","Div","DivAssign","Dot","DotDot","DoubleColon","Else","Eof","Eq","False","Field","Finalize","For","Function","Group","Gt","GtEq","I128","I16","I32","I64","I8","Identifier","If","Import","In","Inline","Integer","KEYWORD_TOKENS","LeftCurly","LeftParen","LeftSquare","Leo","Let","Lt","LtEq","Mapping","Mul","MulAssign","Not","NotEq","Or","OrAssign","Parenthesis","Pow","PowAssign","Private","Program","Public","Question","Record","Rem","RemAssign","Return","RightCurly","RightParen","RightSquare","Scalar","SelfLower","Semicolon","Shl","ShlAssign","Shr","ShrAssign","Signature","StaticString","String","Struct","Sub","SubAssign","Then","Token","Transition","True","U128","U16","U32","U64","U8","Underscore","WhiteSpace","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eat","eat_integer","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","init","init","into","into","is_keyword","keyword_to_symbol","open_close_pair","serialize","take_from_value","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"leo_parser"],[5,"leo_parser::parser"],[13,"leo_parser::parser::context"],[116,"leo_parser::parser::expression"],[118,"leo_parser::parser::statement"],[119,"leo_parser::parser::type_"],[120,"leo_parser::tokenizer"],[125,"leo_parser::tokenizer::lexer"],[153,"leo_parser::tokenizer::token"],[311,"leo_errors::emitter"],[312,"leo_ast::common::node_builder"],[313,"leo_span::span"],[314,"leo_ast"],[315,"leo_errors::errors"],[316,"leo_ast::input::input_ast"],[317,"leo_ast::program"],[318,"leo_ast::input::input_ast"],[319,"leo_ast::expressions::binary"],[320,"core::option"],[321,"leo_ast::groups::group_literal"],[322,"leo_ast::common::identifier"],[323,"leo_ast::common::positive_number"],[324,"leo_span::span"],[325,"leo_errors::errors::parser::parser_warnings"],[326,"core::ops::function"],[327,"leo_span::symbol"],[328,"alloc::vec"],[329,"leo_ast::functions::annotation"],[330,"leo_ast::statement"],[331,"core::ops::function"],[332,"leo_ast::statement::conditional"],[333,"leo_ast::statement::console::console_statement"],[334,"leo_ast::statement::const_"],[335,"leo_ast::statement::definition"],[336,"leo_ast::functions"],[337,"leo_ast::functions::output"],[338,"leo_ast::functions::input"],[339,"leo_ast::input::definition"],[340,"leo_ast::statement::iteration"],[341,"leo_ast::mapping"],[342,"leo_ast::struct::member"],[343,"leo_ast::functions::mode"],[344,"leo_ast::functions::output"],[345,"leo_ast::program::program_scope"],[346,"leo_ast::statement::return_"],[347,"leo_ast::input::section"],[348,"leo_ast::struct"],[349,"leo_ast::expressions::struct_init"],[350,"leo_ast::groups::group_coordinate"],[351,"leo_ast::types::integer_type"],[352,"core::result"],[353,"core::any"],[354,"core::fmt"],[355,"core::iter::traits::iterator"],[356,"serde::de"],[357,"core::iter::adapters::peekable"],[358,"alloc::string"],[359,"core::fmt"],[360,"serde_json::value"]],"d":["Represents all valid Leo keyword tokens. This differs from …","Creates a new AST from a given file path and source code …","Parses program inputs from the input file path","The parser to convert Leo code text into an Program
AST …","The tokenizer to convert Leo code text into tokens.","","","","","Creates a new program from a given file path and source …","Parses an input file at the given file path
and source
…","","","Dummy span used to appease borrow checker.","Stores a program in tokenized format plus additional …","true if parsing an identifier inside an input file.","Constructs a binary expression left op right
.","","","Advances the parser cursor by one token.","Checks whether the current token is tok
.","Checks whether the current token is a Token::Int(_)
.","","","true if parsing an expression for if and loop statements …","","Returns true
if the next token is equal to the given token.","Eats any of the given tokens
, returning true
if anything …","Eats one of binary operators matching any in tokens
.","Removes the next two tokens if they are a pair of …","Eats the next token if its an identifier and returns it.","Removes the next token if it is a [Token::Integer(_)
] and …","Emit the error err
.","Emit the warning warning
.","Eats the expected token
, or errors.","Eats one of the expected tokens
, or errors.","Expects an Identifier
, or errors.","Returns the argument unchanged.","Handler used to side-channel emit errors from the parser.","Returns true if the next token exists.","","Calls U::from(self)
.","Look-ahead dist
tokens of self.token
and get access to …","At the previous token, return and make an identifier with …","Returns a new ParserContext
type given a vector of tokens.","Counter used to generate unique node ids.","Returns an Expression
AST node if the next tokens …","Returns an Annotation
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a AssertStatement
AST node if the next tokens …","Returns a AssignStatement
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Parses a left-associative binary expression …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a Block
AST node if the next tokens represent a …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens represent","Parse a list separated by ,
and delimited by brackets.","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens represent","Returns a ConditionalStatement
AST node if the next tokens …","Returns a ConsoleStatement
AST node if the next tokens …","Returns a ConstDeclaration
AST node if the next tokens …","Returns a DefinitionStatement
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Parses a tuple of Expression
AST nodes.","Returns an Expression
AST node if the next token is an …","Returns an [(Identifier, Function)
] AST node if the next …","Returns a FunctionOutput
AST node if the next tokens …","Parses an import statement import foo.leo;
.","Returns a Input
AST node if the next tokens represent a …","Parses a single parameter definition: …","Returns a [ParsedInputFile
] struct filled with the data …","Parses a list of T
s using inner
The opening and closing …","Returns an IterationStatement
AST node if the next tokens …","Parses a mapping declaration, e.g. …","Returns a Member
AST node if the next tokens represent a …","Returns an Expression
AST node if the next tokens …","Returns a [ParamMode
] AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a Output
AST node if the next tokens represent a …","Parse a list separated by ,
and delimited by parens.","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next token is a …","Returns a [(Type, Span)
] tuple of AST nodes if the next …","Returns a Program
AST if all tokens can be consumed and …","Parsers a program scope program foo.aleo { ... }
.","Returns a ReturnStatement
AST node if the next tokens …","Parses particular section in the Input or State file. …","Returns an Expression
AST node if the next tokens …","Returns a Statement
AST node if the next tokens represent …","Parses a struct or record definition, e.g., …","Returns an Expression
AST node if the next tokens …","","Returns a Vec<Member>
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a [(Type, Span)
] tuple of AST nodes if the next …","Parses IDENT: TYPE
.","Returns an Expression
AST node if the next tokens …","Returns a reference to the next token if it is a …","","Returns true if the current token is (
.","The previous token, i.e., if p.tokens = ['3', *, '4']
, …","The current token, i.e., if p.tokens = ['3', *, '4']
, then …","Returns a IntegerType
AST node if the given token is a …","All un-bumped tokens.","","","","Returns an unexpected error at the current token.","","","","","","","","","","Creates a new vector of spanned tokens from a given file …","Yields spanned tokens from the given source code text.","","","","","","","","","","Returns a dummy token at a dummy span.","Eat an identifier, that is, a string matching ‘[a-zA-Z][…","Ensure that string
contains no Unicode Bidirectional …","","","Returns the argument unchanged.","","Calls U::from(self)
.","Checks if a char is a Unicode Bidirectional Override code …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","{ ... }
","[ ... ]
","","","","","","","","Describes delimiters of a token sequence.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents all valid Leo keyword tokens. This differs from …","","","","","","","","","","","","","","","( ... )
","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents all valid Leo syntax tokens.","","","","","","","","","","","","","","","","","","","","","","","","","Returns a tuple: [(token length, token)] if the next token …","Returns a tuple: [(integer length, integer token)] if an …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Returns true
if the self
token equals a Leo keyword.","Converts self
to the corresponding Symbol
if it is_keyword
.","Returns the open/close tokens that the delimiter …","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,27,27,27,27,27,27,27,27,27,0,0,27,27,27,27,27,0,27,27,27,27,27,27,27,27,27,27,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,41,41,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,14,14,14,14,41,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,41,14,41,14,41,14,41,14,41,14,41,14,14,41,14,14,14,14,14,14,14,14,14,14,41,14,41,14,41,14,14,41,14,14,14,41,14,14,41,14,41,14,41,14,41],"f":[0,[[1,2,3,4],[[6,[5]]]],[[1,2,3,4],[[6,[7]]]],0,0,0,0,0,0,[[1,2,3,4],[[6,[8]]]],[[1,2,3,4],[[6,[9]]]],0,0,0,0,0,[[2,10,10,11],10],[-1,-2,[],[]],[-1,-2,[],[]],[12,13],[[12,14],15],[12,15],[16,-1,[]],[16,-1,[]],0,[16,13],[[12,14],15],[[12,[17,[14]]],15],[[12,[17,[14]]],[[18,[11]]]],[12,[[18,[[6,[19]]]]]],[12,[[18,[20]]]],[12,[[6,[[13,[21,22]]]]]],[[12,23],13],[[12,24],13],[[12,14],[[6,[22]]]],[[12,[17,[14]]],[[6,[22]]]],[12,[[6,[20]]]],[-1,-1,[]],0,[12,15],[[],16],[-1,-2,[],[]],[[12,16,-1],-2,25,[]],[[12,26],20],[[1,2,[28,[27]]],12],0,[12,[[6,[10]]]],[12,[[6,[29]]]],[12,[[6,[10]]]],[12,[[6,[30]]]],[12,[[6,[30]]]],[[12,10],[[6,[10]]]],[[12,[17,[14]],-1],[[6,[10]]],31],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[32]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[[12,-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[33]]]],[12,[[6,[34]]]],[12,[[6,[35]]]],[12,[[6,[36]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[[13,[[28,[10]],15,22]]]]]],[12,[[6,[10]]]],[12,[[6,[[13,[26,37]]]]]],[12,[[6,[38]]]],[12,[[6,[[13,[26,[13,[8,22]]]]]]]],[12,[[6,[39]]]],[12,[[6,[40]]]],[12,[[6,[9]]]],[[12,41,[18,[14]],-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[42]]]],[12,[[6,[[13,[26,43]]]]]],[12,[[6,[44]]]],[[12,10,20],[[6,[10]]]],[12,[[6,[45]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[46]]]],[[12,-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[[13,[47,22]]]]]],[12,[[6,[8]]]],[12,[[6,[48]]]],[12,[[6,[49]]]],[12,[[6,[50]]]],[12,[[6,[10]]]],[12,[[6,[30]]]],[12,[[6,[[13,[26,51]]]]]],[[12,20],[[6,[10]]]],[12,[[6,[52]]]],[12,[[6,[[13,[[28,[44]],22]]]]]],[12,[[6,[10]]]],[12,[[6,[[13,[47,22]]]]]],[12,[[6,[[13,[20,47,22]]]]]],[12,[[6,[10]]]],[[12,16],[[18,[53]]]],[12,15],[12,15],0,0,[14,[[18,[54]]]],0,[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[[12,-1],[[6,[-2]]],57,[]],[[27,[17,[14]]],23],[-1,-2,[],[]],0,[[22,22,3,3],[[6,[13]]]],0,0,0,0,0,[[3,4],[[6,[[28,[27]]]]]],[[3,4],[[0,[58]]]],0,[-1,-2,[],[]],[-1,-2,[],[]],[27,27],[[-1,-2],13,[],[]],[16,-1,[]],[16,-1,[]],[-1,[[55,[27]]],59],[16,13],[[],27],[[[60,[-1]]],[[18,[61]]],58],[3,[[6,[13]]]],[[27,62],63],[[27,62],63],[-1,-1,[]],[[],16],[-1,-2,[],[]],[64,15],[[27,-1],55,65],0,[[66,3],[[55,[-1]]],[]],[-1,-2,[],[]],[-1,61,[]],0,[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[14,14],[41,41],[[-1,-2],13,[],[]],[[-1,-2],13,[],[]],[16,-1,[]],[16,-1,[]],[16,-1,[]],[16,-1,[]],[-1,[[55,[14]]],59],[16,13],[16,13],[3,[[6,[[13,[16,14]]]]]],[[[60,[-1]]],[[6,[[13,[16,14]]]]],58],[[14,14],15],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[14,62],63],[[14,62],63],[-1,-1,[]],[-1,-1,[]],[[],16],[[],16],[-1,-2,[],[]],[-1,-2,[],[]],[14,15],[14,[[18,[26]]]],[41,[[13,[14,14]]]],[[14,-1],55,65],[[66,3],[[55,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,61,[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[-1,56,[]],[-1,-2,[],[]],[-1,-2,[],[]]],"c":[],"p":[[3,"Handler",311],[3,"NodeBuilder",312],[15,"str"],[3,"BytePos",313],[3,"Ast",314],[6,"Result",315],[3,"InputData",316],[3,"Program",317],[3,"InputAst",316],[4,"Expression",318],[4,"BinaryOperation",319],[3,"ParserContext",13],[15,"tuple"],[4,"Token",153],[15,"bool"],[15,"usize"],[15,"slice"],[4,"Option",320],[3,"GroupTuple",321],[3,"Identifier",322],[3,"NonNegativeNumber",323],[3,"Span",313],[4,"ParserError",324],[4,"ParserWarning",325],[8,"FnOnce",326],[3,"Symbol",327],[3,"SpannedToken",125],[3,"Vec",328],[3,"Annotation",329],[4,"Statement",330],[8,"FnMut",326],[3,"Block",331],[3,"ConditionalStatement",332],[3,"ConsoleStatement",333],[3,"ConstDeclaration",334],[3,"DefinitionStatement",335],[3,"Function",336],[3,"FunctionOutput",337],[4,"Input",338],[3,"Definition",339],[4,"Delimiter",153],[3,"IterationStatement",340],[3,"Mapping",341],[3,"Member",342],[4,"Mode",343],[4,"Output",337],[4,"Type",344],[3,"ProgramScope",345],[3,"ReturnStatement",346],[3,"Section",347],[3,"Struct",348],[3,"StructVariableInitializer",349],[4,"GroupCoordinate",350],[4,"IntegerType",351],[4,"Result",352],[3,"TypeId",353],[8,"Display",354],[8,"Iterator",355],[8,"Deserializer",356],[3,"Peekable",357],[3,"String",358],[3,"Formatter",354],[6,"Result",354],[15,"char"],[8,"Serializer",359],[4,"Value",360]],"b":[[137,"impl-Debug-for-SpannedToken"],[138,"impl-Display-for-SpannedToken"],[287,"impl-Display-for-Token"],[288,"impl-Debug-for-Token"]]},\
-"leo_passes":{"doc":"leo-passes","t":"AAAAAAAAAAAAAAAADMLLMMLLLLLMMMLLMLMMMMMLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAAAAADDLLLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLDLLLLLLMLLLLLLLLLLLLLLMLMMLLLLLLLGNDEGIGLLLLLLLLLLLLLMMMMLLLLLLLLLMMMMLLLLLLLLLDLLLLLLLLLLLLLLLMLLLLLMLMLLLLLLDLLLLLLLLLLMLLLLDLLLLLLLLLLLLLLAMLLLLLLLLLLLLLMLLMMLMLLLLLLLLLLLAMLDDMLLLLLLLLLLLLLLLLMLLLLMLLMMLLMMLLLLLLLLLLLLMLLNNNDELLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMLLLLDLLLLLLLLLLLLMLLLLLLLAAAADLLLLLLLLLMLMLLLLLLLLLLLLLLLLMLAAAADMLLLLLLLLLLMLLLLLLLLLLLMLMLAAAADMLLLMLLLLLLLLLLLMLLLLLLLLLLLMLMLLLLLLMLLAAAAADMLLLLLLLLLMLLLLLLLLLMLLLLDMLLMLLLLLLLLMLLLLLLLLLMLLLMLAAAAAENNIDLLLLLMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLMLLLLLLLLLMLLMLMLLLLLLLLMMLLLMLLLQQIKAAAADMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLMLMLLLMLLADLLLLLLLMLLLMLLLLLLLLAAAAFRRRRRRRRRDRLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLMLLMMMLLMMMLMMLLLMFMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["code_generation","common","dead_code_elimination","destructuring","flattening","function_inlining","loop_unrolling","pass","static_single_assignment","symbol_table_creation","type_checking","generator","visit_expressions","visit_program","visit_statements","visit_type","CodeGenerator","_call_graph","borrow","borrow_mut","composite_mapping","current_function","deref","deref_mut","do_pass","drop","from","futures","global_mapping","in_finalize","init","into","is_transition_function","new","next_register","program","program_id","struct_graph","symbol_table","try_from","try_into","type_id","type_table","variable_mapping","visit_access","visit_array","visit_array_access","visit_assert","visit_assign","visit_associated_constant","visit_associated_function","visit_binary","visit_block","visit_call","visit_cast","visit_conditional","visit_console","visit_definition","visit_err","visit_expression","visit_expression_statement","visit_function","visit_identifier","visit_import","visit_iteration","visit_mapping","visit_member_access","visit_program","visit_record","visit_return","visit_statement","visit_struct","visit_struct_init","visit_struct_or_record","visit_ternary","visit_tuple","visit_type","visit_type_with_visibility","visit_unary","visit_unit","visit_value","vzip","assigner","constant_propagation_table","graph","rename_table","replacer","symbol_table","type_table","Assigner","AssignerInner","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","counter","default","default","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","from","from","init","init","inner","into","into","simple_assign_statement","simple_assign_statement","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unique_symbol","unique_symbol","vzip","vzip","ConstantPropagationTable","borrow","borrow_mut","clone","clone_into","constant_in_local_scope","constant_in_parent_scope","constants","default","deref","deref_mut","deserialize","drop","fmt","from","init","insert_block","insert_constant","insert_fn_scope","into","lookup_constant","lookup_scope_by_index","parent","scope_index","scope_index","scopes","serialize","take_from_value","to_owned","try_from","try_into","type_id","vzip","CallGraph","CycleDetected","DiGraph","DiGraphError","ImportGraph","Node","StructGraph","add_edge","borrow","borrow","borrow_mut","borrow_mut","contains_cycle_from","contains_node","deref","deref","deref_mut","deref_mut","drop","drop","edges","edges","edges","edges","fmt","fmt","from","from","init","init","into","into","new","nodes","nodes","nodes","nodes","post_order","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","RenameTable","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","drop","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","ids","init","into","local_names","lookup","lookup_id","names","new","parent","to_owned","try_from","try_into","type_id","update","vzip","Replacer","borrow","borrow_mut","deref","deref_mut","drop","from","init","into","new","reconstruct_identifier","replace","try_from","try_into","type_id","vzip","SymbolTable","borrow","borrow_mut","check_shadowing","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","from_json_file","from_json_string","function_symbol","functions","init","insert_block","insert_fn","insert_struct","insert_variable","into","lookup_fn_scope","lookup_fn_symbol","lookup_scope_by_index","lookup_struct","lookup_variable","lookup_variable_mut","new_function_symbol","parent","remove_variable_from_current_scope","scope_index","scope_index","scopes","serialize","structs","take_from_value","to_json_file","to_json_file_without_keys","to_json_string","to_json_value","to_owned","try_from","try_into","type_id","variable_in_local_scope","variable_in_parent_scope","variable_symbol","variables","vzip","FinalizeData","FunctionSymbol","_span","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","finalize","fmt","fmt","from","from","id","init","init","input","input","into","into","output_type","output_type","serialize","serialize","take_from_value","take_from_value","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","variant","vzip","vzip","Const","Input","Mut","VariableSymbol","VariableType","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","declaration","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","init","init","into","into","serialize","serialize","span","take_from_value","take_from_value","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_","type_id","type_id","vzip","vzip","TypeTable","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","drop","fmt","from","get","init","inner","insert","into","to_owned","try_from","try_into","type_id","vzip","dead_code_eliminator","eliminate_expression","eliminate_program","eliminate_statement","DeadCodeEliminator","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","init","into","is_necessary","new","node_builder","reconstruct_assert","reconstruct_assign","reconstruct_associated_function","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_expression_statement","reconstruct_function","reconstruct_identifier","reconstruct_iteration","reconstruct_return","reconstruct_struct_init","try_from","try_into","type_id","used_variables","vzip","destructure_expression","destructure_program","destructure_statement","destructurer","Destructurer","assigner","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","init","into","new","node_builder","reconstruct_assign","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_iteration","reconstruct_return","reconstruct_tuple_access","simple_assign_statement","try_from","try_into","tuples","type_id","type_table","vzip","flatten_expression","flatten_program","flatten_statement","flattener","Flattener","assigner","borrow","borrow_mut","clear_early_returns","condition_stack","construct_guard","deref","deref_mut","do_pass","drop","fold_guards","fold_returns","from","init","into","new","node_builder","reconstruct_assert","reconstruct_assign","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_function","reconstruct_iteration","reconstruct_return","reconstruct_struct_init","reconstruct_ternary","returns","simple_assign_statement","symbol_table","ternary_array","ternary_struct","ternary_tuple","try_from","try_into","type_id","type_table","unique_simple_assign_statement","vzip","assignment_renamer","function_inliner","inline_expression","inline_program","inline_statement","AssignmentRenamer","assigner","borrow","borrow_mut","clear","deref","deref_mut","drop","from","init","into","is_lhs","load","new","reconstruct_assign","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_identifier","reconstruct_iteration","reconstruct_struct_init","rename_table","try_from","try_into","type_id","vzip","FunctionInliner","assignment_renamer","borrow","borrow_mut","call_graph","deref","deref_mut","do_pass","drop","from","init","into","new","node_builder","reconstruct_assign","reconstruct_block","reconstruct_call","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_expression_statement","reconstruct_iteration","reconstruct_program_scope","reconstructed_functions","try_from","try_into","type_id","type_table","vzip","range_iterator","unroll_expression","unroll_program","unroll_statement","unroller","Clusivity","Exclusive","Inclusive","LoopBound","RangeIterator","borrow","borrow","borrow_mut","borrow_mut","cjk_compat_variants","clusivity","current","deref","deref","deref_mut","deref_mut","drop","drop","end","from","from","init","init","into","into","into_iter","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","new","next","nfc","nfd","nfkc","nfkd","progress_with","stream_safe","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Unroller","borrow","borrow_mut","constant_propagation_table","current_scope_index","deref","deref_mut","do_pass","drop","emit_err","enter_scope","exit_scope","from","handler","init","into","is_unrolling","new","node_builder","reconstruct_array_access","reconstruct_block","reconstruct_const","reconstruct_definition","reconstruct_function","reconstruct_identifier","reconstruct_iteration","reconstruct_program_scope","scope_index","symbol_table","try_from","try_into","type_id","type_table","unroll_iteration_statement","unroll_single_iteration","vzip","Input","Output","Pass","do_pass","rename_expression","rename_program","rename_statement","static_single_assigner","StaticSingleAssigner","assigner","borrow","borrow_mut","consume_access","consume_array","consume_assert","consume_assign","consume_binary","consume_block","consume_call","consume_cast","consume_conditional","consume_console","consume_const","consume_definition","consume_expression_statement","consume_function","consume_identifier","consume_iteration","consume_literal","consume_program","consume_program_scope","consume_return","consume_struct","consume_struct_init","consume_ternary","consume_tuple","consume_unary","consume_unit","deref","deref_mut","do_pass","drop","from","init","into","is_lhs","new","node_builder","pop","push","rename_table","simple_assign_statement","symbol_table","try_from","try_into","type_id","type_table","unique_simple_assign_statement","vzip","creator","SymbolTableCreator","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","handler","init","into","new","symbol_table","try_from","try_into","type_id","visit_function","visit_import","visit_mapping","visit_struct","vzip","check_expressions","check_program","check_statements","checker","return_incorrect_type","ADDRESS_TYPE","BOOLEAN_TYPE","FIELD_TYPE","GROUP_TYPE","INT_TYPES","MAGNITUDE_TYPES","SCALAR_TYPE","SIGNATURE_TYPE","SIGNED_INT_TYPES","TypeChecker","UNSIGNED_INT_TYPES","assert_address_type","assert_and_return_type","assert_array_type","assert_bool_int_type","assert_bool_type","assert_castable_type","assert_field_group_int_type","assert_field_group_scalar_int_type","assert_field_group_signed_int_type","assert_field_group_type","assert_field_int_type","assert_field_scalar_int_type","assert_field_type","assert_group_type","assert_int_type","assert_magnitude_type","assert_mapping_type","assert_member_is_not_record","assert_scalar_type","assert_signature_type","assert_signed_int_type","assert_type","assert_type_is_valid","assert_unsigned_int_type","borrow","borrow_mut","call_graph","check_core_function_call","check_eq_types","check_expected_struct","check_type","create_child_scope","deref","deref_mut","do_pass","drop","emit_err","enter_scope","exit_scope","from","function","get_core_constant","get_core_function_call","handler","has_finalize","has_return","init","into","is_finalize","is_imported","is_return","new","struct_graph","symbol_table","try_from","try_into","type_id","type_table","types_to_string","variant","visit_access","visit_array","visit_assert","visit_assign","visit_binary","visit_block","visit_call","visit_cast","visit_conditional","visit_console","visit_const","visit_definition","visit_err","visit_expression","visit_expression_statement","visit_function","visit_identifier","visit_iteration","visit_literal","visit_mapping","visit_program","visit_program_scope","visit_return","visit_statement","visit_struct","visit_struct_init","visit_ternary","visit_tuple","visit_unary","visit_unit","vzip"],"q":[[0,"leo_passes"],[11,"leo_passes::code_generation"],[16,"leo_passes::code_generation::generator"],[82,"leo_passes::common"],[89,"leo_passes::common::assigner"],[131,"leo_passes::common::constant_propagation_table"],[164,"leo_passes::common::graph"],[210,"leo_passes::common::rename_table"],[241,"leo_passes::common::replacer"],[257,"leo_passes::common::symbol_table"],[308,"leo_passes::common::symbol_table::function_symbol"],[356,"leo_passes::common::symbol_table::variable_symbol"],[416,"leo_passes::common::type_table"],[437,"leo_passes::dead_code_elimination"],[441,"leo_passes::dead_code_elimination::dead_code_eliminator"],[472,"leo_passes::destructuring"],[476,"leo_passes::destructuring::destructurer"],[504,"leo_passes::flattening"],[508,"leo_passes::flattening::flattener"],[549,"leo_passes::function_inlining"],[554,"leo_passes::function_inlining::assignment_renamer"],[580,"leo_passes::function_inlining::function_inliner"],[609,"leo_passes::loop_unrolling"],[614,"leo_passes::loop_unrolling::range_iterator"],[682,"leo_passes::loop_unrolling::unroller"],[718,"leo_passes::pass"],[722,"leo_passes::static_single_assignment"],[726,"leo_passes::static_single_assignment::static_single_assigner"],[777,"leo_passes::symbol_table_creation"],[778,"leo_passes::symbol_table_creation::creator"],[799,"leo_passes::type_checking"],[803,"leo_passes::type_checking::check_expressions"],[804,"leo_passes::type_checking::checker"],[906,"leo_ast::program"],[907,"core::result"],[908,"core::any"],[909,"leo_ast::expressions::access"],[910,"alloc::string"],[911,"leo_ast::expressions::array"],[912,"leo_ast::access::array_access"],[913,"leo_ast::statement::assert"],[914,"leo_ast::statement::assign"],[915,"leo_ast::access::associated_constant_access"],[916,"leo_ast::access::associated_function_access"],[917,"leo_ast::expressions::binary"],[918,"leo_ast::statement::block"],[919,"leo_ast::expressions::call"],[920,"leo_ast::expressions::cast"],[921,"leo_ast::statement::conditional"],[922,"leo_ast::statement::console::console_statement"],[923,"leo_ast::statement::definition"],[924,"leo_ast::expressions::err"],[925,"leo_ast::expressions"],[926,"leo_ast::statement::expression"],[927,"leo_ast::functions"],[928,"leo_ast::common::identifier"],[929,"leo_span::symbol"],[930,"leo_ast::statement::iteration"],[931,"leo_ast::mapping"],[932,"leo_ast::access::member_access"],[933,"leo_ast::struct"],[934,"leo_ast::statement::return_"],[935,"leo_ast::statement"],[936,"leo_ast::expressions::struct_init"],[937,"leo_ast::expressions::ternary"],[938,"leo_ast::expressions::tuple"],[939,"leo_ast::types::type_"],[940,"leo_ast::functions::mode"],[941,"leo_ast::expressions::unary"],[942,"leo_ast::expressions::unit"],[943,"leo_ast::expressions::literal"],[944,"core::fmt"],[945,"core::fmt"],[946,"core::fmt"],[947,"leo_errors::errors"],[948,"core::option"],[949,"core::cell"],[950,"serde::ser"],[951,"serde_json::value"],[952,"indexmap::set"],[953,"core::fmt"],[954,"alloc::boxed"],[955,"core::ops::function"],[956,"leo_span::span"],[957,"std::path"],[958,"leo_ast::common::node_builder"],[959,"leo_ast::access::tuple_access"],[960,"alloc::vec"],[961,"leo_ast::types::array"],[962,"leo_ast::types::tuple"],[963,"leo_ast::program::program_scope"],[964,"unicode_normalization::replace"],[965,"unicode_normalization::recompose"],[966,"unicode_normalization::decompose"],[967,"indicatif::progress_bar"],[968,"indicatif::iter"],[969,"unicode_normalization::stream_safe"],[970,"leo_errors::errors::loop_unroller::loop_unroller_errors"],[971,"leo_errors::emitter"],[972,"leo_ast::statement::const_"],[973,"leo_ast::types::mapping"],[974,"leo_ast::functions::core_function"],[975,"leo_errors::errors::type_checker::type_checker_error"],[976,"leo_ast::types::core_constant"]],"d":["","","The Dead Code Elimination pass traverses the AST and …","The destructuring pass traverses the AST and destructures …","The flattening pass traverses the AST after the SSA pass …","The Function Inlining pass traverses the AST and inlines …","","","The Static Single Assignment pass traverses the AST and …","","","","","","","","","The call graph for the program.","","","Mapping of composite names to a tuple containing metadata …","Reference to the current function.","","","","","Returns the argument unchanged.","","Mapping of global identifiers to their associated names.","Are we traversing a finalize block?","","Calls U::from(self)
.","Are we traversing a transition function?","Initializes a new CodeGenerator
.","A counter to track the next available register.","","","The struct dependency graph for the program.","The symbol table for the program.","","","","A mapping between expressions and their types.","Mapping of variables to registers.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A struct used to create assignment statements.","Contains the actual data for Assigner
. Modeled this way to …","","","","","","","","","A strictly increasing counter, used to ensure that new …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","The inner counter. RefCell
is used here to avoid &mut
all …","Calls U::from(self)
.","Calls U::from(self)
.","Constructs the assignment statement place = expr;
. This …","Constructs the assignment statement place = expr;
. This …","","","","","","","","","Return a new unique Symbol
from a &str
.","Return a new unique Symbol
from a &str
.","","","","","","","","Returns true if the constant exists in the local scope","Returns true if the constant exists in any parent scope","The known constants in the current scope This field is …","","","","","","","Returns the argument unchanged.","","Creates a new scope for the block and stores it in the …","Inserts a constant into the constant propagation table.","Inserts a function into the symbol table.","Calls U::from(self)
.","Attempts to lookup a constant in the constant propagation …","Returns the scope associated with index
, if it exists in …","The parent scope if it exists. For example, the parent …","Returns the current scope index. Increments the scope …","The index of the current scope.","The sub-scopes of this scope.","","","","","","","","A call graph.","An error that is emitted when a cycle is detected in the …","A directed graph.","Errors in directed graph operations.","An import dependency graph.","A node in a graph.","A struct dependency graph.","Adds an edge to the graph.","","","","","","Returns true
if the graph contains the given node.","","","","","","","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Initializes a new DiGraph
from a vector of source nodes.","The set of nodes in the graph.","The set of nodes in the graph.","The set of nodes in the graph.","The set of nodes in the graph.","Returns the post-order ordering of the graph. Detects if …","","","","","","","","","RenameTable
tracks the names assigned by static single …","","","","","","","","","","","","","","","Returns the argument unchanged.","The mapping from symbols to node IDs. These are used to …","","Calls U::from(self)
.","Returns the symbols that were renamed in the current scope.","Looks up the new name for symbol
, recursively checking the …","Looks up the node ID for symbol
, recursively checking the …","The mapping from names in the original AST to new names in …","Create a new RenameTable
with the given parent.","The RenameTable
of the parent scope.","","","","","Updates self.mapping
with the desired entry. Creates a new …","","A Replacer
applies replacer
to all Identifier
s in an AST. …","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","Recursively checks if the symbol table contains an entry …","","","","","","","","","Returns the argument unchanged.","Deserializes the JSON string into a symbol table from a …","Deserializes the JSON string into a symbol table.","","Functions represents the name of each function mapped to …","","Creates a new scope for the block and stores it in the …","Inserts a function into the symbol table.","Inserts a struct into the symbol table.","Inserts a variable into the symbol table.","Calls U::from(self)
.","Returns the scope associated with the function symbol, if …","Attempts to lookup a function in the symbol table.","Returns the scope associated with index
, if it exists in …","Attempts to lookup a struct in the symbol table.","Attempts to lookup a variable in the symbol table.","Returns a mutable reference to the VariableSymbol
if it …","","The parent scope if it exists. For example, the parent …","Removes a variable from the symbol table.","Returns the current scope index. Increments the scope …","The index of the current scope.","The sub-scopes of this scope.","","Maps struct names to struct definitions. This field is …","","","Serializes the symbol table into a JSON value and removes …","Serializes the symbol table into a JSON string.","Converts the symbol table into a JSON value","","","","","Returns true if the variable exists in the local scope","Returns true if the variable exists in any parent scope","","The variables defined in a scope. This field is populated …","","Metadata associated with the finalize block.","An entry for a function in the symbol table.","The Span
associated with the function.","","","","","","","","","","","","","","","","","Metadata associated with the finalize block.","","","Returns the argument unchanged.","Returns the argument unchanged.","The index associated with the scope in the parent symbol …","","","The inputs to the finalize block.","The inputs to the function.","Calls U::from(self)
.","Calls U::from(self)
.","The output type of the finalize block.","The output type of the function.","","","","","","","","","","","","","Is this function a transition, inlined, or a regular …","","","","","","An entry for a variable in the symbol table.","An enumeration of the different types of variable type.","","","","","","","","","The type of declaration for the variable.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","The Span
associated with the variable.","","","","","","","","","","","The Type
of the variable.","","","","","A mapping between node IDs and their types.","","","","","","","","","","Returns the argument unchanged.","Gets an entry from the table.","","The inner table. RefCell
is used here to avoid &mut
all …","Inserts an entry into the table.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Whether or not the variables are necessary.","Initializes a new DeadCodeEliminator
.","A counter to generate unique node IDs.","","Reconstruct an assignment statement by eliminating any …","Reconstructs the associated function access expression.","Reconstructs the statements inside a basic block, …","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Reconstructs expression statements by eliminating any dead …","","Marks identifiers as used. This is necessary to determine …","Loop unrolling unrolls and removes iteration statements …","","Reconstruct the components of the struct init expression. …","","","","The set of used variables in the current function body.","","","","","","","A struct used to construct (unique) assignment statements.","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","A counter used to generate unique node IDs.","Flattens an assign statement, if necessary. Marks …","","","","","","Reconstructs","Replaces a tuple access expression with the appropriate …","A wrapper around assigner.simple_assign_statement
that …","","","A mapping between variables and flattened tuple …","","A mapping between node IDs and their types.","","","","","","","A struct used to construct (unique) assignment statements.","","","Clears the state associated with ReturnStatements
, …","A stack of condition Expression
s visited up to the current …","Constructs a guard from the current state of the condition …","","","","","Fold guards and expressions into a single expression. Note …","Folds a list of return statements into a single return …","Returns the argument unchanged.","","Calls U::from(self)
.","","A counter used to generate unique node IDs.","Rewrites an assert statement into a flattened form. Assert …","Flattens an assign statement, if necessary. Marks …","Flattens the statements inside a basic block. The …","Flatten a conditional statement into a list of statements.","","","Flattens a function’s body and finalize block, if it …","","Transforms a return statement into an empty block …","Reconstructs a struct init expression, flattening any …","Reconstructs ternary expressions over arrays, structs, and …","A list containing tuples of guards and expressions …","A wrapper around assigner.simple_assign_statement
that …","The symbol table associated with the program.","","","","","","","A mapping between node IDs and their types.","A wrapper around assigner.unique_simple_assign_statement
…","","","","","","","An AssignmentRenamer
renames the left-hand side of all …","","","","Clear the internal rename table.","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","Load the internal rename table with a set of entries.","Initialize a new AssignmentRenamer
.","Rename the left-hand side of the assignment statement.","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Rename the identifier if it is the left-hand side of an …","Loop unrolling unrolls and removes iteration statements …","Rename the variable initializers in the struct expression.","","","","","","","A wrapper around an Assigner used to create unique …","","","The call graph for the program.","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Initializes a new FunctionInliner
.","A counter used to create unique NodeIDs.","Reconstruct an assignment statement by inlining any …","Reconstructs the statements inside a basic block, …","","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Reconstructs expression statements by inlining any …","Loop unrolling unrolls and removes iteration statements …","","A map of reconstructed functions in the current program …","","","","A mapping between node IDs and their types.","","","","","","","Whether or not a bound is inclusive or exclusive.","","","A trait for whose implementors are concrete values for …","An iterator over a range of values.","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A table of constant variables.","Returns the index of the current scope. Note that if we …","","","","","Emits a Loop Unrolling Error","Enters a child scope.","Exits the current block scope.","Returns the argument unchanged.","An error handler used for any errors found during …","","Calls U::from(self)
.","Are we in the midst of unrolling a loop?","","A counter used to generate unique node IDs.","","","","","","","","","The index of the current scope.","The symbol table for the function being processed.","","","","A mapping from node IDs to their types.","Unrolls an IterationStatement.","A helper function to unroll a single iteration an …","","","","A compiler pass consuming Self::Input
and returning …","Runs the compiler pass.","","","","","","A struct used to construct (unique) assignment statements.","","","Consumes an access expression, accumulating any statements …","Consumes an array expression, accumulating any statements …","Consumes the expressions in an AssertStatement
, returning …","Consume all AssignStatement
s, renaming as necessary.","Consumes a binary expression, accumulating any statements …","Consumes a Block
, flattening its constituent …","Consumes a call expression without visiting the function …","Consumes a cast expression, accumulating any statements …","Consumes a ConditionalStatement
, producing phi functions …","Parsing guarantees that console statements are not present …","","Consumes the DefinitionStatement
into an AssignStatement
, …","Consumes the expressions associated with …","Reconstructs the Function
s in the Program
, while …","Produces a new Identifier
with a unique name.","","Consumes and returns the literal without making any …","","","Reconstructs the expression associated with the return …","Reconstructs records in the program, ordering its fields …","Consumes a struct initialization expression with renamed …","Consumes a ternary expression, accumulating any statements …","Consumes a tuple expression, accumulating any statements …","Consumes a unary expression, accumulating any statements …","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","A flag to determine whether or not the traversal is on the …","Initializes a new StaticSingleAssigner
with an empty …","A counter used to generate unique node IDs.","If the RenameTable has a parent, then self.rename_table
is …","Pushes a new scope, setting the current scope as the new …","The RenameTable
for the current basic block in the AST","","The SymbolTable
of the program.","","","","A mapping from node IDs to their types.","Constructs a simple assign statement for expr
with a …","","","A compiler pass during which the SymbolTable
is created. …","","","","","Runs the compiler pass.","","Returns the argument unchanged.","The error handler.","","Calls U::from(self)
.","","The SymbolTable
constructed by this compiler pass.","","","","","","","","","","","","","","","","","","","","","","","","","Emits an error to the error handler if the given type is …","Use this method when you know the actual type. Emits an …","Emits an error if the type is not an array.","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not an …","Emits an error to the handler if the given type is not a …","Emits an error if the type is not a mapping.","Emits an error if the struct member is a record type.","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the error handler if the actual
type is …","Emits an error if the type or its constituent types is not …","Emits an error to the handler if the given type is not an …","","","The call graph for the program.","Type checks the inputs to a core function call and returns …","Emits an error if the two given types are not equal.","Returns the struct
type and emits an error if the expected
…","Emits an error to the handler if the given type is invalid.","Creates a new child scope.","","","","","Emits a type checker error.","Enters a child scope.","Exits the current scope.","Returns the argument unchanged.","The name of the function that we are currently traversing.","Type checks the inputs to an associated constant and …","Emits an error if the struct
is not a core library struct. …","The error handler.","Whether or not the function that we are currently …","Whether or not the function that we are currently …","","Calls U::from(self)
.","Whether or not we are currently traversing a finalize …","Whether or not we are currently traversing an imported …","Whether or not we are currently traversing a return …","Returns a new type checker given a symbol table and error …","A dependency graph of the structs in program.","The symbol table for the program.","","","","A mapping from node IDs to their types.","","The variant of the function that we are currently …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,0,0,46,47,46,47,46,47,46,47,47,46,47,46,47,46,47,46,47,46,47,46,47,46,47,46,46,47,46,47,46,47,46,47,46,47,46,47,46,47,46,47,0,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,0,64,0,0,0,0,0,61,64,61,64,61,61,61,64,61,64,61,64,61,5,6,109,61,64,61,64,61,64,61,64,61,61,5,6,109,61,61,64,61,64,61,64,61,64,61,0,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,0,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,0,0,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,74,76,74,76,74,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,74,76,74,77,77,77,0,0,77,73,77,73,77,73,77,73,73,77,73,77,73,77,73,77,73,77,73,77,77,77,77,73,73,73,73,77,77,73,73,77,73,77,73,77,73,77,73,73,77,73,77,73,77,73,77,73,77,73,73,77,73,77,73,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,0,0,0,0,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,0,0,0,0,0,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,0,0,0,0,0,0,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,0,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,0,0,0,0,0,0,90,90,0,0,90,91,90,91,91,91,91,90,91,90,91,90,91,91,90,91,90,91,90,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,90,91,90,91,90,91,90,91,0,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,110,110,0,110,0,0,0,0,0,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,0,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,0,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],0,0,0,[[],1],[-1,-2,[],[]],0,[[3,4,5,6,7],8],0,0,0,0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,0,[[8,11],[[2,[12,12]]]],[[8,13],[[2,[12,12]]]],[[8,14],[[2,[12,12]]]],[[8,15],12],[[8,16],12],[[8,17],[[2,[12,12]]]],[[8,18],[[2,[12,12]]]],[[8,19],[[2,[12,12]]]],[[8,20],12],[[8,21],[[2,[12,12]]]],[[8,22],[[2,[12,12]]]],[[8,23],12],[[8,24],12],[[8,25],12],[[8,26],[[2,[12,12]]]],[[8,27],[[2,[12,12]]]],[[8,28],12],[[8,29],12],[[8,30],[[2,[12,12]]]],[[8,31,7],12],[[8,32],12],[[8,33],12],[[8,34],[[2,[12,12]]]],[[8,7],12],[[8,35],12],[[8,36],12],[[8,37],12],[[8,35],12],[[8,38],[[2,[12,12]]]],[[8,35],12],[[8,39],[[2,[12,12]]]],[[8,40],[[2,[12,12]]]],[41,12],[[8,41,42],12],[[8,43],[[2,[12,12]]]],[[8,44],[[2,[12,12]]]],[[8,45],[[2,[12,12]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[46,46],[47,47],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[[],46],[[],47],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],[[46,48],49],[[47,48],49],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],0,[-1,-2,[],[]],[-1,-2,[],[]],[[46,30,27,50],37],[[47,30,27,50],37],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[[46,-1,-2],31,51,51],[[47,-1,-2],31,51,51],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[52,52],[[-1,-2],2,[],[]],[[52,31],53],[[52,31],53],0,[[],52],[1,-1,[]],[1,-1,[]],[-1,[[9,[52]]],54],[1,2],[[52,48],49],[-1,-1,[]],[[],1],[52,1],[[52,31,27],[[55,[2]]]],[52,[[55,[2]]]],[-1,-2,[],[]],[[52,31],[[56,[27]]]],[[52,1],[[56,[[57,[52]]]]]],0,[52,1],0,0,[[52,-1],9,58],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,[[[61,[-1]],-1,-1],2,62],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[61,[-1]],-1,[63,[-1]],[63,[-1]]],[[56,[-1]]],62],[[[61,[-1]],-1],53,62],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],0,0,0,0,[[[64,[-1]],48],49,[65,62]],[[[61,[-1]],48],49,[65,62]],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[[[63,[-1]]],[[61,[-1]]],62],0,0,0,0,[[[61,[-1]]],[[9,[[63,[-1]],[64,[-1]]]]],62],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[66,66],[[-1,-2],2,[],[]],[[],66],[1,-1,[]],[1,-1,[]],[1,2],[[66,66],53],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[66,48],49],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],[66,[[0,[67]]]],[[66,31],[[56,[31]]]],[[66,31],[[56,[50]]]],0,[[[56,[[68,[66]]]]],66],0,[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[66,31,31,50],2],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[-1,[[69,[-1]]],70],[[[69,[-1]],30],[[2,[27]]],70],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[[3,31,71],[[55,[2]]]],[3,3],[[-1,-2],2,[],[]],[[],3],[1,-1,[]],[1,-1,[]],[-1,[[9,[3]]],54],[1,2],[[3,48],49],[-1,-1,[]],[72,[[55,[3]]]],[60,[[55,[3]]]],0,0,[[],1],[3,1],[[3,31,29],[[55,[2]]]],[[3,31,35],[[55,[2]]]],[[3,31,73],[[55,[2]]]],[-1,-2,[],[]],[[3,31],[[56,[[57,[3]]]]]],[[3,31],[[56,[74]]]],[[3,1],[[56,[[57,[3]]]]]],[[3,31],[[56,[35]]]],[[3,31],[[56,[73]]]],[[3,31],[[56,[73]]]],[[1,29],74],0,[[3,31],2],[3,1],0,0,[[3,-1],9,58],0,[[59,60],[[9,[-1]]],[]],[[3,72,60],[[55,[2]]]],[[3,72,60,[75,[60]]],[[55,[2]]]],[3,[[55,[12]]]],[3,[[55,[59]]]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[3,31],53],[[3,31],53],0,0,[-1,-2,[],[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[76,76],[74,74],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[-1,[[9,[76]]],54],[-1,[[9,[74]]],54],[1,2],[1,2],0,[[76,48],49],[[74,48],49],[-1,-1,[]],[-1,-1,[]],0,[[],1],[[],1],0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,[[76,-1],9,58],[[74,-1],9,58],[[59,60],[[9,[-1]]],[]],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[77,77],[73,73],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[-1,[[9,[77]]],54],[-1,[[9,[73]]],54],[1,2],[1,2],[[77,77],53],[[73,73],53],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[77,48],49],[[77,48],49],[[73,48],49],[[73,48],49],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[[77,-1],9,58],[[73,-1],9,58],0,[[59,60],[[9,[-1]]],[]],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,12,[]],[-1,12,[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],0,[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[4,4],[[-1,-2],2,[],[]],[[],4],[1,-1,[]],[1,-1,[]],[1,2],[[4,48],49],[-1,-1,[]],[[4,50],[[56,[41]]]],[[],1],0,[[4,50,41],2],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[78,79],0,[[79,15],[[2,[37]]]],[[79,16],[[2,[37]]]],[[79,18],[[2,[27]]]],[[79,20],[[2,[20]]]],[[79,23],[[2,[37]]]],[[79,24],[[2,[37]]]],[[79,25],[[2,[37]]]],[[79,28],[[2,[37]]]],[[79,29],29],[[79,30],[[2,[27]]]],[[79,32],[[2,[37]]]],[[79,36],[[2,[37]]]],[[79,38],[[2,[27]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[4,78,46],80],0,[[80,16],[[2,[37]]]],[[80,20],[[2,[20]]]],[[80,23],[[2,[37]]]],[[80,24],[[2,[37]]]],[[80,25],[[2,[37]]]],[[80,32],[[2,[37]]]],[[80,36],[[2,[37]]]],[[80,81],[[2,[27]]]],[[80,30,27],37],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],0,[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[82,[[83,[[2,[[56,[27]],36]]]]]],0,[82,[[56,[27]]]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[82,60,[83,[[2,[[56,[27]],27]]]]],[[2,[27,[83,[37]]]]]],[[82,20,[83,[[2,[[56,[27]],36]]]]],2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[3,4,78,46],82],0,[[82,15],[[2,[37]]]],[[82,16],[[2,[37]]]],[[82,20],[[2,[20]]]],[[82,23],[[2,[37]]]],[[82,24],[[2,[37]]]],[[82,25],[[2,[37]]]],[[82,29],29],[[82,32],[[2,[37]]]],[[82,36],[[2,[37]]]],[[82,38],[[2,[27]]]],[[82,39],[[2,[27]]]],0,[[82,30,27],37],0,[[82,84,27,30,30],[[2,[27,[83,[37]]]]]],[[82,35,27,30,30],[[2,[27,[83,[37]]]]]],[[82,85,27,30,30],[[2,[27,[83,[37]]]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[82,27],[[2,[30,37]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[86,2],[1,-1,[]],[1,-1,[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[[86,-1],2,67],[46,86],[[86,16],[[2,[37]]]],[[86,23],[[2,[37]]]],[[86,24],[[2,[37]]]],[[86,25],[[2,[37]]]],[[86,30],[[2,[27]]]],[[86,32],[[2,[37]]]],[[86,38],[[2,[27]]]],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[78,6,46,4],87],0,[[87,16],[[2,[37]]]],[[87,20],[[2,[20]]]],[[87,21],[[2,[27]]]],[[87,23],[[2,[37]]]],[[87,24],[[2,[37]]]],[[87,25],[[2,[37]]]],[[87,28],[[2,[37]]]],[[87,32],[[2,[37]]]],[[87,88],88],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[89,[-2]]],[],[]],0,0,[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],0,[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9]]],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12,-13]]],[],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5]]],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11]]],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3]]],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10]]],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]]],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10]]],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9]]],[],[],[],[],[],[],[],[],[]],[-1,2,[]],[-1,[[2,[-2,-3,-4,-5]]],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]]],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11]]],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6]]],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4]]],[],[],[],[]],[-1,[[2,[-2]]],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7]]],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3]]],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8]]],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12,-13]]],[],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6]]],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8]]],[],[],[],[],[],[],[],[]],[-1,2,[]],[-1,[[2,[-2,-3,-4,-5,-6,-7]]],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4]]],[],[],[],[]],[-1,[[2,[-2]]],[],[]],[[-1,-1,90],[[91,[-1]]],92],[[[91,[-1]]],56,92],[-1,[[93,[-2]]],[],[]],[-1,[[94,[-2]]],[],[]],[-1,[[93,[-2]]],[],[]],[-1,[[94,[-2]]],[],[]],[[-1,95],[[96,[-2]]],[],[]],[-1,[[97,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],0,[98,1],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[98,99],2],[[98,1],1],[[98,1],2],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],0,[[3,4,100,78],98],0,[[98,14],[[2,[27]]]],[[98,20],[[2,[20]]]],[[98,101],[[2,[37]]]],[[98,25],[[2,[37]]]],[[98,29],29],[[98,30],[[2,[27]]]],[[98,32],[[2,[37]]]],[[98,88],88],0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[98,32],37],[[98,32,-1],37,92],[-1,-2,[],[]],0,0,0,[[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[102,11]],[[102,13]],[[102,15]],[[102,16]],[[102,19]],[[102,20]],[[102,21]],[[102,22]],[[102,23]],[[102,24]],[[102,101]],[[102,25]],[[102,28]],[[102,29]],[[102,30]],[[102,32]],[[102,45]],[[102,7]],[[102,88]],[[102,36]],[[102,35]],[[102,38]],[[102,39]],[[102,40]],[[102,43]],[[102,44]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[[78,3,4,46],102],0,[102,66],[102,2],0,[[102,30,27],37],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[102,27],[[2,[30,37]]]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],[100,103],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[103,29],2],[[103,7],2],[[103,33],2],[[103,35],2],[-1,-2,[],[]],0,0,0,0,[[[56,[41]],[56,[41]],[56,[41]]],[[56,[41]]]],0,0,0,0,0,0,0,0,0,0,0,[[104,[56,[41]],71],2],[[104,41,[56,[41]],71],41],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],[[56,[105]]]],[[104,71,31,41],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],41,71],2],[[104,41,71],53],[[104,[56,[41]],71],2],[-1,-2,[],[]],[-1,-2,[],[]],0,[[104,106,[75,[[2,[[56,[41]],71]]]],71],[[56,[41]]]],[[104,[56,[41]],[56,[41]],71],2],[[104,30,[56,[41]],71],41],[[104,-1,12,[56,[41]],71],2,70],[104,1],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[104,107],2],[[104,1],2],[[104,1],2],[-1,-1,[]],0,[[104,41,30],[[56,[108]]]],[[104,41,30],[[56,[106]]]],0,0,0,[[],1],[-1,-2,[],[]],0,0,0,[[3,4,100],104],0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[[75,[41]]],12],0,[[104,11]],[[104,13]],[[104,15],2],[[104,16],2],[[104,19]],[[104,20],2],[[104,21]],[[104,22]],[[104,23],2],[[104,24],2],[[104,101],2],[[104,25],2],[[104,26]],[[104,27]],[[104,28],2],[[104,29],2],[[104,30]],[[104,32],2],[[104,45]],[[104,33],2],[[104,7],2],[[104,88],2],[[104,36],2],[[104,37],2],[[104,35],2],[[104,38]],[[104,39]],[[104,40]],[[104,43]],[[104,44]],[-1,-2,[],[]]],"c":[],"p":[[15,"usize"],[15,"tuple"],[3,"SymbolTable",257],[3,"TypeTable",416],[6,"StructGraph",164],[6,"CallGraph",164],[3,"Program",906],[3,"CodeGenerator",16],[4,"Result",907],[3,"TypeId",908],[4,"AccessExpression",909],[3,"String",910],[3,"ArrayExpression",911],[3,"ArrayAccess",912],[3,"AssertStatement",913],[3,"AssignStatement",914],[3,"AssociatedConstant",915],[3,"AssociatedFunction",916],[3,"BinaryExpression",917],[3,"Block",918],[3,"CallExpression",919],[3,"CastExpression",920],[3,"ConditionalStatement",921],[3,"ConsoleStatement",922],[3,"DefinitionStatement",923],[3,"ErrExpression",924],[4,"Expression",925],[3,"ExpressionStatement",926],[3,"Function",927],[3,"Identifier",928],[3,"Symbol",929],[3,"IterationStatement",930],[3,"Mapping",931],[3,"MemberAccess",932],[3,"Struct",933],[3,"ReturnStatement",934],[4,"Statement",935],[3,"StructExpression",936],[3,"TernaryExpression",937],[3,"TupleExpression",938],[4,"Type",939],[4,"Mode",940],[3,"UnaryExpression",941],[3,"UnitExpression",942],[4,"Literal",943],[3,"Assigner",89],[3,"AssignerInner",89],[3,"Formatter",944],[6,"Result",944],[6,"NodeID",945],[8,"Display",944],[3,"ConstantPropagationTable",131],[15,"bool"],[8,"Deserializer",946],[6,"Result",947],[4,"Option",948],[3,"RefCell",949],[8,"Serializer",950],[4,"Value",951],[15,"str"],[3,"DiGraph",164],[8,"Node",164],[3,"IndexSet",952],[4,"DiGraphError",164],[8,"Debug",944],[3,"RenameTable",210],[8,"Iterator",953],[3,"Box",954],[3,"Replacer",241],[8,"Fn",955],[3,"Span",956],[3,"PathBuf",957],[3,"VariableSymbol",356],[3,"FunctionSymbol",308],[15,"slice"],[3,"FinalizeData",308],[4,"VariableType",356],[3,"NodeBuilder",958],[3,"DeadCodeEliminator",441],[3,"Destructurer",476],[3,"TupleAccess",959],[3,"Flattener",508],[3,"Vec",960],[3,"ArrayType",961],[3,"TupleType",962],[3,"AssignmentRenamer",554],[3,"FunctionInliner",580],[3,"ProgramScope",963],[3,"Replacements",964],[4,"Clusivity",614],[3,"RangeIterator",614],[8,"LoopBound",614],[3,"Recompositions",965],[3,"Decompositions",966],[3,"ProgressBar",967],[3,"ProgressBarIter",968],[3,"StreamSafe",969],[3,"Unroller",682],[4,"LoopUnrollerError",970],[3,"Handler",971],[3,"ConstDeclaration",972],[3,"StaticSingleAssigner",726],[3,"SymbolTableCreator",778],[3,"TypeChecker",804],[3,"MappingType",973],[4,"CoreFunction",974],[4,"TypeCheckerError",975],[4,"CoreConstant",976],[6,"ImportGraph",164],[8,"Pass",718]],"b":[[388,"impl-Display-for-VariableType"],[389,"impl-Debug-for-VariableType"],[390,"impl-Debug-for-VariableSymbol"],[391,"impl-Display-for-VariableSymbol"]]},\
+"leo_parser":{"doc":"The parser to convert Leo code text into an [AST
] type.","t":"RFFAAAAAAFFAARDMLLLLLLLLMLLLLLLLLLLLLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLLLLRFRRCAAFFDLLLLLLLLLFFLLLLLFLMLLLMLLLLNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNNNNNNNNNNRNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["KEYWORD_TOKENS","parse_ast","parse_program_inputs","parser","tokenizer","context","expression","file","input","parse","parse_input","statement","type_","DUMMY_EOF","ParserContext","allow_identifier_underscores","bin_expr","borrow","borrow_mut","bump","check","check_int","deref","deref_mut","disallow_struct_construction","drop","eat","eat_any","eat_bin_op","eat_group_partial","eat_identifier","eat_whole_number","emit_err","emit_warning","expect","expect_any","expect_identifier","from","handler","has_next","init","into","look_ahead","mk_ident_prev","new","node_builder","parse_additive_expression","parse_annotation","parse_array_expression","parse_assert_statement","parse_assign_statement","parse_associated_access_expression","parse_bin_expr","parse_bitwise_and_expression","parse_bitwise_exclusive_or_expression","parse_bitwise_inclusive_or_expression","parse_block","parse_boolean_and_expression","parse_boolean_or_expression","parse_bracket_comma_list","parse_cast_expression","parse_conditional_expression","parse_conditional_statement","parse_console_statement","parse_const_declaration_statement","parse_definition_statement","parse_equality_expression","parse_exponential_expression","parse_expr_tuple","parse_expression","parse_function","parse_function_output","parse_import","parse_input","parse_input_definition","parse_input_file","parse_list","parse_loop_statement","parse_mapping","parse_member_variable_declaration","parse_method_call_expression","parse_mode","parse_multiplicative_expression","parse_ordering_expression","parse_output","parse_paren_comma_list","parse_postfix_expression","parse_primary_expression","parse_primitive_type","parse_program","parse_program_scope","parse_return_statement","parse_section","parse_shift_expression","parse_statement","parse_struct","parse_struct_init_expression","parse_struct_member","parse_struct_members","parse_tuple_expression","parse_type","parse_typed_ident","parse_unary_expression","peek_group_coordinate","peek_is_external","peek_is_left_par","prev_token","token","token_to_int_type","tokens","try_from","try_into","type_id","unexpected","unexpected_item","vzip","INT_TYPES","assert_no_whitespace","ASSIGN_TOKENS","TYPE_TOKENS","KEYWORD_TOKENS","lexer","token","tokenize","tokenize_iter","SpannedToken","borrow","borrow_mut","clone","clone_into","deref","deref_mut","deserialize","drop","dummy","eat_identifier","ensure_no_bidi_override","fmt","fmt","from","init","into","is_bidi_override","serialize","span","take_from_value","to_owned","to_string","token","try_from","try_into","type_id","vzip","Add","AddAssign","Address","AddressLit","And","AndAssign","Arrow","As","Assert","AssertEq","AssertNeq","Assign","At","BigArrow","BitAnd","BitAndAssign","BitOr","BitOrAssign","BitXor","BitXorAssign","Block","Bool","Brace","Bracket","Colon","Comma","CommentBlock","CommentLine","Console","Const","Constant","Delimiter","Div","DivAssign","Dot","DotDot","DoubleColon","Else","Eof","Eq","False","Field","Finalize","For","Function","Group","Gt","GtEq","I128","I16","I32","I64","I8","Identifier","If","Import","In","Inline","Integer","KEYWORD_TOKENS","LeftCurly","LeftParen","LeftSquare","Leo","Let","Lt","LtEq","Mapping","Mul","MulAssign","Not","NotEq","Or","OrAssign","Parenthesis","Pow","PowAssign","Private","Program","Public","Question","Record","Rem","RemAssign","Return","RightCurly","RightParen","RightSquare","Scalar","SelfLower","Semicolon","Shl","ShlAssign","Shr","ShrAssign","Signature","StaticString","String","Struct","Sub","SubAssign","Then","Token","Transition","True","U128","U16","U32","U64","U8","Underscore","WhiteSpace","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","deserialize","drop","drop","eat","eat_integer","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","init","init","into","into","is_keyword","keyword_to_symbol","open_close_pair","serialize","take_from_value","to_owned","to_owned","to_string","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip"],"q":[[0,"leo_parser"],[5,"leo_parser::parser"],[13,"leo_parser::parser::context"],[116,"leo_parser::parser::expression"],[118,"leo_parser::parser::statement"],[119,"leo_parser::parser::type_"],[120,"leo_parser::tokenizer"],[125,"leo_parser::tokenizer::lexer"],[153,"leo_parser::tokenizer::token"],[311,"leo_errors::emitter"],[312,"leo_ast::common::node_builder"],[313,"leo_span::span"],[314,"leo_ast"],[315,"leo_errors::errors"],[316,"leo_ast::input::input_ast"],[317,"leo_ast::program"],[318,"leo_ast::input::input_ast"],[319,"leo_ast::expressions::binary"],[320,"core::option"],[321,"leo_ast::groups::group_literal"],[322,"leo_ast::common::identifier"],[323,"leo_ast::common::positive_number"],[324,"leo_span::span"],[325,"leo_errors::errors::parser::parser_warnings"],[326,"core::ops::function"],[327,"leo_span::symbol"],[328,"alloc::vec"],[329,"leo_ast::functions::annotation"],[330,"leo_ast::statement"],[331,"core::ops::function"],[332,"leo_ast::statement::conditional"],[333,"leo_ast::statement::console::console_statement"],[334,"leo_ast::statement::const_"],[335,"leo_ast::statement::definition"],[336,"leo_ast::functions"],[337,"leo_ast::functions::output"],[338,"leo_ast::functions::input"],[339,"leo_ast::input::definition"],[340,"leo_ast::statement::iteration"],[341,"leo_ast::mapping"],[342,"leo_ast::struct::member"],[343,"leo_ast::functions::mode"],[344,"leo_ast::functions::output"],[345,"leo_ast::program::program_scope"],[346,"leo_ast::statement::return_"],[347,"leo_ast::input::section"],[348,"leo_ast::struct"],[349,"leo_ast::expressions::struct_init"],[350,"leo_ast::groups::group_coordinate"],[351,"leo_ast::types::integer_type"],[352,"core::result"],[353,"core::any"],[354,"core::fmt"],[355,"core::iter::traits::iterator"],[356,"serde::de"],[357,"core::iter::adapters::peekable"],[358,"alloc::string"],[359,"core::fmt"],[360,"serde_json::value"]],"d":["Represents all valid Leo keyword tokens. This differs from …","Creates a new AST from a given file path and source code …","Parses program inputs from the input file path","The parser to convert Leo code text into an Program
AST …","The tokenizer to convert Leo code text into tokens.","","","","","Creates a new program from a given file path and source …","Parses an input file at the given file path
and source
…","","","Dummy span used to appease borrow checker.","Stores a program in tokenized format plus additional …","true if parsing an identifier inside an input file.","Constructs a binary expression left op right
.","","","Advances the parser cursor by one token.","Checks whether the current token is tok
.","Checks whether the current token is a Token::Int(_)
.","","","true if parsing an expression for if and loop statements …","","Returns true
if the next token is equal to the given token.","Eats any of the given tokens
, returning true
if anything …","Eats one of binary operators matching any in tokens
.","Removes the next two tokens if they are a pair of …","Eats the next token if its an identifier and returns it.","Removes the next token if it is a [Token::Integer(_)
] and …","Emit the error err
.","Emit the warning warning
.","Eats the expected token
, or errors.","Eats one of the expected tokens
, or errors.","Expects an Identifier
, or errors.","Returns the argument unchanged.","Handler used to side-channel emit errors from the parser.","Returns true if the next token exists.","","Calls U::from(self)
.","Look-ahead dist
tokens of self.token
and get access to …","At the previous token, return and make an identifier with …","Returns a new ParserContext
type given a vector of tokens.","Counter used to generate unique node ids.","Returns an Expression
AST node if the next tokens …","Returns an Annotation
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a AssertStatement
AST node if the next tokens …","Returns a AssignStatement
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Parses a left-associative binary expression …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a Block
AST node if the next tokens represent a …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens represent","Parse a list separated by ,
and delimited by brackets.","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens represent","Returns a ConditionalStatement
AST node if the next tokens …","Returns a ConsoleStatement
AST node if the next tokens …","Returns a ConstDeclaration
AST node if the next tokens …","Returns a DefinitionStatement
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Parses a tuple of Expression
AST nodes.","Returns an Expression
AST node if the next token is an …","Returns an [(Identifier, Function)
] AST node if the next …","Returns a FunctionOutput
AST node if the next tokens …","Parses an import statement import foo.leo;
.","Returns a Input
AST node if the next tokens represent a …","Parses a single parameter definition: …","Returns a [ParsedInputFile
] struct filled with the data …","Parses a list of T
s using inner
The opening and closing …","Returns an IterationStatement
AST node if the next tokens …","Parses a mapping declaration, e.g. …","Returns a Member
AST node if the next tokens represent a …","Returns an Expression
AST node if the next tokens …","Returns a [ParamMode
] AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a Output
AST node if the next tokens represent a …","Parse a list separated by ,
and delimited by parens.","Returns an Expression
AST node if the next tokens …","Returns an Expression
AST node if the next token is a …","Returns a [(Type, Span)
] tuple of AST nodes if the next …","Returns a Program
AST if all tokens can be consumed and …","Parsers a program scope program foo.aleo { ... }
.","Returns a ReturnStatement
AST node if the next tokens …","Parses particular section in the Input or State file. …","Returns an Expression
AST node if the next tokens …","Returns a Statement
AST node if the next tokens represent …","Parses a struct or record definition, e.g., …","Returns an Expression
AST node if the next tokens …","","Returns a Vec<Member>
AST node if the next tokens …","Returns an Expression
AST node if the next tokens …","Returns a [(Type, Span)
] tuple of AST nodes if the next …","Parses IDENT: TYPE
.","Returns an Expression
AST node if the next tokens …","Returns a reference to the next token if it is a …","","Returns true if the current token is (
.","The previous token, i.e., if p.tokens = ['3', *, '4']
, …","The current token, i.e., if p.tokens = ['3', *, '4']
, then …","Returns a IntegerType
AST node if the given token is a …","All un-bumped tokens.","","","","Returns an unexpected error at the current token.","","","","","","","","","","Creates a new vector of spanned tokens from a given file …","Yields spanned tokens from the given source code text.","","","","","","","","","","Returns a dummy token at a dummy span.","Eat an identifier, that is, a string matching ‘[a-zA-Z][…","Ensure that string
contains no Unicode Bidirectional …","","","Returns the argument unchanged.","","Calls U::from(self)
.","Checks if a char is a Unicode Bidirectional Override code …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","{ ... }
","[ ... ]
","","","","","","","","Describes delimiters of a token sequence.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents all valid Leo keyword tokens. This differs from …","","","","","","","","","","","","","","","( ... )
","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents all valid Leo syntax tokens.","","","","","","","","","","","","","","","","","","","","","","","","","Returns a tuple: [(token length, token)] if the next token …","Returns a tuple: [(integer length, integer token)] if an …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Returns true
if the self
token equals a Leo keyword.","Converts self
to the corresponding Symbol
if it is_keyword
.","Returns the open/close tokens that the delimiter …","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,0,0,0,0,0,0,0,0,0,0,27,27,27,27,27,27,27,27,27,0,0,27,27,27,27,27,0,27,27,27,27,27,27,27,27,27,27,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,41,41,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,14,14,14,14,41,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,14,14,14,14,14,14,14,14,14,14,41,14,41,14,41,14,41,14,41,14,41,14,14,41,14,14,14,14,14,14,14,14,14,14,41,14,41,14,41,14,14,41,14,14,14,41,14,14,41,14,41,14,41,14,41],"f":[0,[[1,2,3,4],[[6,[5]]]],[[1,2,3,4],[[6,[7]]]],0,0,0,0,0,0,[[1,2,3,4],[[6,[8]]]],[[1,2,3,4],[[6,[9]]]],0,0,0,0,0,[[2,10,10,11],10],[-1,-2,[],[]],[-1,-2,[],[]],[12,13],[[12,14],15],[12,15],[16,-1,[]],[16,-1,[]],0,[16,13],[[12,14],15],[[12,[17,[14]]],15],[[12,[17,[14]]],[[18,[11]]]],[12,[[18,[[6,[19]]]]]],[12,[[18,[20]]]],[12,[[6,[[13,[21,22]]]]]],[[12,23],13],[[12,24],13],[[12,14],[[6,[22]]]],[[12,[17,[14]]],[[6,[22]]]],[12,[[6,[20]]]],[-1,-1,[]],0,[12,15],[[],16],[-1,-2,[],[]],[[12,16,-1],-2,25,[]],[[12,26],20],[[1,2,[28,[27]]],12],0,[12,[[6,[10]]]],[12,[[6,[29]]]],[12,[[6,[10]]]],[12,[[6,[30]]]],[12,[[6,[30]]]],[[12,10],[[6,[10]]]],[[12,[17,[14]],-1],[[6,[10]]],31],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[32]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[[12,-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[33]]]],[12,[[6,[34]]]],[12,[[6,[35]]]],[12,[[6,[36]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[[13,[[28,[10]],15,22]]]]]],[12,[[6,[10]]]],[12,[[6,[[13,[26,37]]]]]],[12,[[6,[38]]]],[12,[[6,[[13,[26,[13,[8,22]]]]]]]],[12,[[6,[39]]]],[12,[[6,[40]]]],[12,[[6,[9]]]],[[12,41,[18,[14]],-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[42]]]],[12,[[6,[[13,[26,43]]]]]],[12,[[6,[44]]]],[[12,10,20],[[6,[10]]]],[12,[[6,[45]]]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[46]]]],[[12,-1],[[6,[[13,[[28,[-2]],15,22]]]]],31,[]],[12,[[6,[10]]]],[12,[[6,[10]]]],[12,[[6,[[13,[47,22]]]]]],[12,[[6,[8]]]],[12,[[6,[48]]]],[12,[[6,[49]]]],[12,[[6,[50]]]],[12,[[6,[10]]]],[12,[[6,[30]]]],[12,[[6,[[13,[26,51]]]]]],[[12,20],[[6,[10]]]],[12,[[6,[52]]]],[12,[[6,[[13,[[28,[44]],22]]]]]],[12,[[6,[10]]]],[12,[[6,[[13,[47,22]]]]]],[12,[[6,[[13,[20,47,22]]]]]],[12,[[6,[10]]]],[[12,16],[[18,[53]]]],[12,15],[12,15],0,0,[14,[[18,[54]]]],0,[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[[12,-1],[[6,[-2]]],57,[]],[[27,[17,[14]]],23],[-1,-2,[],[]],0,[[22,22,3,3],[[6,[13]]]],0,0,0,0,0,[[3,4],[[6,[[28,[27]]]]]],[[3,4],[[0,[58]]]],0,[-1,-2,[],[]],[-1,-2,[],[]],[27,27],[[-1,-2],13,[],[]],[16,-1,[]],[16,-1,[]],[-1,[[55,[27]]],59],[16,13],[[],27],[[[60,[-1]]],[[18,[61]]],58],[3,[[6,[13]]]],[[27,62],63],[[27,62],63],[-1,-1,[]],[[],16],[-1,-2,[],[]],[64,15],[[27,-1],55,65],0,[[66,3],[[55,[-1]]],[]],[-1,-2,[],[]],[-1,61,[]],0,[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[14,14],[41,41],[[-1,-2],13,[],[]],[[-1,-2],13,[],[]],[16,-1,[]],[16,-1,[]],[16,-1,[]],[16,-1,[]],[-1,[[55,[14]]],59],[16,13],[16,13],[3,[[6,[[13,[16,14]]]]]],[[[60,[-1]]],[[6,[[13,[16,14]]]]],58],[[14,14],15],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[14,62],63],[[14,62],63],[-1,-1,[]],[-1,-1,[]],[[],16],[[],16],[-1,-2,[],[]],[-1,-2,[],[]],[14,15],[14,[[18,[26]]]],[41,[[13,[14,14]]]],[[14,-1],55,65],[[66,3],[[55,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,61,[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,[[55,[-2]]],[],[]],[-1,56,[]],[-1,56,[]],[-1,-2,[],[]],[-1,-2,[],[]]],"c":[],"p":[[3,"Handler",311],[3,"NodeBuilder",312],[15,"str"],[3,"BytePos",313],[3,"Ast",314],[6,"Result",315],[3,"InputData",316],[3,"Program",317],[3,"InputAst",316],[4,"Expression",318],[4,"BinaryOperation",319],[3,"ParserContext",13],[15,"tuple"],[4,"Token",153],[15,"bool"],[15,"usize"],[15,"slice"],[4,"Option",320],[3,"GroupTuple",321],[3,"Identifier",322],[3,"NonNegativeNumber",323],[3,"Span",313],[4,"ParserError",324],[4,"ParserWarning",325],[8,"FnOnce",326],[3,"Symbol",327],[3,"SpannedToken",125],[3,"Vec",328],[3,"Annotation",329],[4,"Statement",330],[8,"FnMut",326],[3,"Block",331],[3,"ConditionalStatement",332],[3,"ConsoleStatement",333],[3,"ConstDeclaration",334],[3,"DefinitionStatement",335],[3,"Function",336],[3,"FunctionOutput",337],[4,"Input",338],[3,"Definition",339],[4,"Delimiter",153],[3,"IterationStatement",340],[3,"Mapping",341],[3,"Member",342],[4,"Mode",343],[4,"Output",337],[4,"Type",344],[3,"ProgramScope",345],[3,"ReturnStatement",346],[3,"Section",347],[3,"Struct",348],[3,"StructVariableInitializer",349],[4,"GroupCoordinate",350],[4,"IntegerType",351],[4,"Result",352],[3,"TypeId",353],[8,"Display",354],[8,"Iterator",355],[8,"Deserializer",356],[3,"Peekable",357],[3,"String",358],[3,"Formatter",354],[6,"Result",354],[15,"char"],[8,"Serializer",359],[4,"Value",360]],"b":[[137,"impl-Debug-for-SpannedToken"],[138,"impl-Display-for-SpannedToken"],[287,"impl-Debug-for-Token"],[288,"impl-Display-for-Token"]]},\
+"leo_passes":{"doc":"leo-passes","t":"AAAAAAAAAAAAAAAADMLLMMLLLLLMMMLLMLMMMMMLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAAAAADDLLLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLDLLLLLLMLLLLLLLLLLLLLLMLMMLLLLLLLGNDEGIGLLLLLLLLLLLLLMMMMLLLLLLLLLMMMMLLLLLLLLLDLLLLLLLLLLLLLLLMLLLLLMLMLLLLLLDLLLLLLLLLLMLLLLDLLLLLLLLLLLLLLAMLLLLLLLLLLLLLMLLMMLMLLLLLLLLLLLAMLDDMLLLLLLLLLLLLLLLLMLLLLMLLMMLLMMLLLLLLLLLLLLMLLNNNDELLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMLLLLDLLLLLLLLLLLLMLLLLLLLAAAADLLLLLLLLLMLMLLLLLLLLLLLLLLLLMLAAAADMLLLLLLLLLLMLLLLLLLLLLLMLMLAAAADMLLLMLLLLLLLLLLLMLLLLLLLLLLLMLMLLLLLLMLLAAAAADMLLLLLLLLLMLLLLLLLLLMLLLLDMLLMLLLLLLLLMLLLLLLLLLMLLLMLAAAAAENNIDLLLLLMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLMLLLLLLLLLMLLMLMLLLLLLLLMMLLLMLLLQQIKAAAADMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLMLMLLLMLLADLLLLLLLMLLLMLLLLLLLLAAAAFRRRRRRRRRDRLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLMLLMMMLLMMMLMMLLLMFMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["code_generation","common","dead_code_elimination","destructuring","flattening","function_inlining","loop_unrolling","pass","static_single_assignment","symbol_table_creation","type_checking","generator","visit_expressions","visit_program","visit_statements","visit_type","CodeGenerator","_call_graph","borrow","borrow_mut","composite_mapping","current_function","deref","deref_mut","do_pass","drop","from","futures","global_mapping","in_finalize","init","into","is_transition_function","new","next_register","program","program_id","struct_graph","symbol_table","try_from","try_into","type_id","type_table","variable_mapping","visit_access","visit_array","visit_array_access","visit_assert","visit_assign","visit_associated_constant","visit_associated_function","visit_binary","visit_block","visit_call","visit_cast","visit_conditional","visit_console","visit_definition","visit_err","visit_expression","visit_expression_statement","visit_function","visit_identifier","visit_import","visit_iteration","visit_mapping","visit_member_access","visit_program","visit_record","visit_return","visit_statement","visit_struct","visit_struct_init","visit_struct_or_record","visit_ternary","visit_tuple","visit_type","visit_type_with_visibility","visit_unary","visit_unit","visit_value","vzip","assigner","constant_propagation_table","graph","rename_table","replacer","symbol_table","type_table","Assigner","AssignerInner","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","counter","default","default","deref","deref","deref_mut","deref_mut","drop","drop","fmt","fmt","from","from","init","init","inner","into","into","simple_assign_statement","simple_assign_statement","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unique_symbol","unique_symbol","vzip","vzip","ConstantPropagationTable","borrow","borrow_mut","clone","clone_into","constant_in_local_scope","constant_in_parent_scope","constants","default","deref","deref_mut","deserialize","drop","fmt","from","init","insert_block","insert_constant","insert_fn_scope","into","lookup_constant","lookup_scope_by_index","parent","scope_index","scope_index","scopes","serialize","take_from_value","to_owned","try_from","try_into","type_id","vzip","CallGraph","CycleDetected","DiGraph","DiGraphError","ImportGraph","Node","StructGraph","add_edge","borrow","borrow","borrow_mut","borrow_mut","contains_cycle_from","contains_node","deref","deref","deref_mut","deref_mut","drop","drop","edges","edges","edges","edges","fmt","fmt","from","from","init","init","into","into","new","nodes","nodes","nodes","nodes","post_order","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","RenameTable","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","drop","eq","equivalent","equivalent","equivalent","equivalent","fmt","from","ids","init","into","local_names","lookup","lookup_id","names","new","parent","to_owned","try_from","try_into","type_id","update","vzip","Replacer","borrow","borrow_mut","deref","deref_mut","drop","from","init","into","new","reconstruct_identifier","replace","try_from","try_into","type_id","vzip","SymbolTable","borrow","borrow_mut","check_shadowing","clone","clone_into","default","deref","deref_mut","deserialize","drop","fmt","from","from_json_file","from_json_string","function_symbol","functions","init","insert_block","insert_fn","insert_struct","insert_variable","into","lookup_fn_scope","lookup_fn_symbol","lookup_scope_by_index","lookup_struct","lookup_variable","lookup_variable_mut","new_function_symbol","parent","remove_variable_from_current_scope","scope_index","scope_index","scopes","serialize","structs","take_from_value","to_json_file","to_json_file_without_keys","to_json_string","to_json_value","to_owned","try_from","try_into","type_id","variable_in_local_scope","variable_in_parent_scope","variable_symbol","variables","vzip","FinalizeData","FunctionSymbol","_span","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","finalize","fmt","fmt","from","from","id","init","init","input","input","into","into","output_type","output_type","serialize","serialize","take_from_value","take_from_value","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","variant","vzip","vzip","Const","Input","Mut","VariableSymbol","VariableType","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","declaration","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","init","init","into","into","serialize","serialize","span","take_from_value","take_from_value","to_owned","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","type_","type_id","type_id","vzip","vzip","TypeTable","borrow","borrow_mut","clone","clone_into","default","deref","deref_mut","drop","fmt","from","get","init","inner","insert","into","to_owned","try_from","try_into","type_id","vzip","dead_code_eliminator","eliminate_expression","eliminate_program","eliminate_statement","DeadCodeEliminator","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","init","into","is_necessary","new","node_builder","reconstruct_assert","reconstruct_assign","reconstruct_associated_function","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_expression_statement","reconstruct_function","reconstruct_identifier","reconstruct_iteration","reconstruct_return","reconstruct_struct_init","try_from","try_into","type_id","used_variables","vzip","destructure_expression","destructure_program","destructure_statement","destructurer","Destructurer","assigner","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","init","into","new","node_builder","reconstruct_assign","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_iteration","reconstruct_return","reconstruct_tuple_access","simple_assign_statement","try_from","try_into","tuples","type_id","type_table","vzip","flatten_expression","flatten_program","flatten_statement","flattener","Flattener","assigner","borrow","borrow_mut","clear_early_returns","condition_stack","construct_guard","deref","deref_mut","do_pass","drop","fold_guards","fold_returns","from","init","into","new","node_builder","reconstruct_assert","reconstruct_assign","reconstruct_block","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_function","reconstruct_iteration","reconstruct_return","reconstruct_struct_init","reconstruct_ternary","returns","simple_assign_statement","symbol_table","ternary_array","ternary_struct","ternary_tuple","try_from","try_into","type_id","type_table","unique_simple_assign_statement","vzip","assignment_renamer","function_inliner","inline_expression","inline_program","inline_statement","AssignmentRenamer","assigner","borrow","borrow_mut","clear","deref","deref_mut","drop","from","init","into","is_lhs","load","new","reconstruct_assign","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_identifier","reconstruct_iteration","reconstruct_struct_init","rename_table","try_from","try_into","type_id","vzip","FunctionInliner","assignment_renamer","borrow","borrow_mut","call_graph","deref","deref_mut","do_pass","drop","from","init","into","new","node_builder","reconstruct_assign","reconstruct_block","reconstruct_call","reconstruct_conditional","reconstruct_console","reconstruct_definition","reconstruct_expression_statement","reconstruct_iteration","reconstruct_program_scope","reconstructed_functions","try_from","try_into","type_id","type_table","vzip","range_iterator","unroll_expression","unroll_program","unroll_statement","unroller","Clusivity","Exclusive","Inclusive","LoopBound","RangeIterator","borrow","borrow","borrow_mut","borrow_mut","cjk_compat_variants","clusivity","current","deref","deref","deref_mut","deref_mut","drop","drop","end","from","from","init","init","into","into","into_iter","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","multiunzip","new","next","nfc","nfd","nfkc","nfkd","progress_with","stream_safe","try_from","try_from","try_into","try_into","type_id","type_id","vzip","vzip","Unroller","borrow","borrow_mut","constant_propagation_table","current_scope_index","deref","deref_mut","do_pass","drop","emit_err","enter_scope","exit_scope","from","handler","init","into","is_unrolling","new","node_builder","reconstruct_array_access","reconstruct_block","reconstruct_const","reconstruct_definition","reconstruct_function","reconstruct_identifier","reconstruct_iteration","reconstruct_program_scope","scope_index","symbol_table","try_from","try_into","type_id","type_table","unroll_iteration_statement","unroll_single_iteration","vzip","Input","Output","Pass","do_pass","rename_expression","rename_program","rename_statement","static_single_assigner","StaticSingleAssigner","assigner","borrow","borrow_mut","consume_access","consume_array","consume_assert","consume_assign","consume_binary","consume_block","consume_call","consume_cast","consume_conditional","consume_console","consume_const","consume_definition","consume_expression_statement","consume_function","consume_identifier","consume_iteration","consume_literal","consume_program","consume_program_scope","consume_return","consume_struct","consume_struct_init","consume_ternary","consume_tuple","consume_unary","consume_unit","deref","deref_mut","do_pass","drop","from","init","into","is_lhs","new","node_builder","pop","push","rename_table","simple_assign_statement","symbol_table","try_from","try_into","type_id","type_table","unique_simple_assign_statement","vzip","creator","SymbolTableCreator","borrow","borrow_mut","deref","deref_mut","do_pass","drop","from","handler","init","into","new","symbol_table","try_from","try_into","type_id","visit_function","visit_import","visit_mapping","visit_struct","vzip","check_expressions","check_program","check_statements","checker","return_incorrect_type","ADDRESS_TYPE","BOOLEAN_TYPE","FIELD_TYPE","GROUP_TYPE","INT_TYPES","MAGNITUDE_TYPES","SCALAR_TYPE","SIGNATURE_TYPE","SIGNED_INT_TYPES","TypeChecker","UNSIGNED_INT_TYPES","assert_address_type","assert_and_return_type","assert_array_type","assert_bool_int_type","assert_bool_type","assert_castable_type","assert_field_group_int_type","assert_field_group_scalar_int_type","assert_field_group_signed_int_type","assert_field_group_type","assert_field_int_type","assert_field_scalar_int_type","assert_field_type","assert_group_type","assert_int_type","assert_magnitude_type","assert_mapping_type","assert_member_is_not_record","assert_scalar_type","assert_signature_type","assert_signed_int_type","assert_type","assert_type_is_valid","assert_unsigned_int_type","borrow","borrow_mut","call_graph","check_core_function_call","check_eq_types","check_expected_struct","check_type","create_child_scope","deref","deref_mut","do_pass","drop","emit_err","enter_scope","exit_scope","from","function","get_core_constant","get_core_function_call","handler","has_finalize","has_return","init","into","is_finalize","is_imported","is_return","new","struct_graph","symbol_table","try_from","try_into","type_id","type_table","types_to_string","variant","visit_access","visit_array","visit_assert","visit_assign","visit_binary","visit_block","visit_call","visit_cast","visit_conditional","visit_console","visit_const","visit_definition","visit_err","visit_expression","visit_expression_statement","visit_function","visit_identifier","visit_iteration","visit_literal","visit_mapping","visit_program","visit_program_scope","visit_return","visit_statement","visit_struct","visit_struct_init","visit_ternary","visit_tuple","visit_unary","visit_unit","vzip"],"q":[[0,"leo_passes"],[11,"leo_passes::code_generation"],[16,"leo_passes::code_generation::generator"],[82,"leo_passes::common"],[89,"leo_passes::common::assigner"],[131,"leo_passes::common::constant_propagation_table"],[164,"leo_passes::common::graph"],[210,"leo_passes::common::rename_table"],[241,"leo_passes::common::replacer"],[257,"leo_passes::common::symbol_table"],[308,"leo_passes::common::symbol_table::function_symbol"],[356,"leo_passes::common::symbol_table::variable_symbol"],[416,"leo_passes::common::type_table"],[437,"leo_passes::dead_code_elimination"],[441,"leo_passes::dead_code_elimination::dead_code_eliminator"],[472,"leo_passes::destructuring"],[476,"leo_passes::destructuring::destructurer"],[504,"leo_passes::flattening"],[508,"leo_passes::flattening::flattener"],[549,"leo_passes::function_inlining"],[554,"leo_passes::function_inlining::assignment_renamer"],[580,"leo_passes::function_inlining::function_inliner"],[609,"leo_passes::loop_unrolling"],[614,"leo_passes::loop_unrolling::range_iterator"],[682,"leo_passes::loop_unrolling::unroller"],[718,"leo_passes::pass"],[722,"leo_passes::static_single_assignment"],[726,"leo_passes::static_single_assignment::static_single_assigner"],[777,"leo_passes::symbol_table_creation"],[778,"leo_passes::symbol_table_creation::creator"],[799,"leo_passes::type_checking"],[803,"leo_passes::type_checking::check_expressions"],[804,"leo_passes::type_checking::checker"],[906,"leo_ast::program"],[907,"core::result"],[908,"core::any"],[909,"leo_ast::expressions::access"],[910,"alloc::string"],[911,"leo_ast::expressions::array"],[912,"leo_ast::access::array_access"],[913,"leo_ast::statement::assert"],[914,"leo_ast::statement::assign"],[915,"leo_ast::access::associated_constant_access"],[916,"leo_ast::access::associated_function_access"],[917,"leo_ast::expressions::binary"],[918,"leo_ast::statement::block"],[919,"leo_ast::expressions::call"],[920,"leo_ast::expressions::cast"],[921,"leo_ast::statement::conditional"],[922,"leo_ast::statement::console::console_statement"],[923,"leo_ast::statement::definition"],[924,"leo_ast::expressions::err"],[925,"leo_ast::expressions"],[926,"leo_ast::statement::expression"],[927,"leo_ast::functions"],[928,"leo_ast::common::identifier"],[929,"leo_span::symbol"],[930,"leo_ast::statement::iteration"],[931,"leo_ast::mapping"],[932,"leo_ast::access::member_access"],[933,"leo_ast::struct"],[934,"leo_ast::statement::return_"],[935,"leo_ast::statement"],[936,"leo_ast::expressions::struct_init"],[937,"leo_ast::expressions::ternary"],[938,"leo_ast::expressions::tuple"],[939,"leo_ast::types::type_"],[940,"leo_ast::functions::mode"],[941,"leo_ast::expressions::unary"],[942,"leo_ast::expressions::unit"],[943,"leo_ast::expressions::literal"],[944,"core::fmt"],[945,"core::fmt"],[946,"core::fmt"],[947,"leo_errors::errors"],[948,"core::option"],[949,"core::cell"],[950,"serde::ser"],[951,"serde_json::value"],[952,"indexmap::set"],[953,"core::fmt"],[954,"alloc::boxed"],[955,"core::ops::function"],[956,"leo_span::span"],[957,"std::path"],[958,"leo_ast::common::node_builder"],[959,"leo_ast::access::tuple_access"],[960,"alloc::vec"],[961,"leo_ast::types::array"],[962,"leo_ast::types::tuple"],[963,"leo_ast::program::program_scope"],[964,"unicode_normalization::replace"],[965,"unicode_normalization::recompose"],[966,"unicode_normalization::decompose"],[967,"indicatif::progress_bar"],[968,"indicatif::iter"],[969,"unicode_normalization::stream_safe"],[970,"leo_errors::errors::loop_unroller::loop_unroller_errors"],[971,"leo_errors::emitter"],[972,"leo_ast::statement::const_"],[973,"leo_ast::types::mapping"],[974,"leo_ast::functions::core_function"],[975,"leo_errors::errors::type_checker::type_checker_error"],[976,"leo_ast::types::core_constant"]],"d":["","","The Dead Code Elimination pass traverses the AST and …","The destructuring pass traverses the AST and destructures …","The flattening pass traverses the AST after the SSA pass …","The Function Inlining pass traverses the AST and inlines …","","","The Static Single Assignment pass traverses the AST and …","","","","","","","","","The call graph for the program.","","","Mapping of composite names to a tuple containing metadata …","Reference to the current function.","","","","","Returns the argument unchanged.","","Mapping of global identifiers to their associated names.","Are we traversing a finalize block?","","Calls U::from(self)
.","Are we traversing a transition function?","Initializes a new CodeGenerator
.","A counter to track the next available register.","","","The struct dependency graph for the program.","The symbol table for the program.","","","","A mapping between expressions and their types.","Mapping of variables to registers.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A struct used to create assignment statements.","Contains the actual data for Assigner
. Modeled this way to …","","","","","","","","","A strictly increasing counter, used to ensure that new …","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","The inner counter. RefCell
is used here to avoid &mut
all …","Calls U::from(self)
.","Calls U::from(self)
.","Constructs the assignment statement place = expr;
. This …","Constructs the assignment statement place = expr;
. This …","","","","","","","","","Return a new unique Symbol
from a &str
.","Return a new unique Symbol
from a &str
.","","","","","","","","Returns true if the constant exists in the local scope","Returns true if the constant exists in any parent scope","The known constants in the current scope This field is …","","","","","","","Returns the argument unchanged.","","Creates a new scope for the block and stores it in the …","Inserts a constant into the constant propagation table.","Inserts a function into the symbol table.","Calls U::from(self)
.","Attempts to lookup a constant in the constant propagation …","Returns the scope associated with index
, if it exists in …","The parent scope if it exists. For example, the parent …","Returns the current scope index. Increments the scope …","The index of the current scope.","The sub-scopes of this scope.","","","","","","","","A call graph.","An error that is emitted when a cycle is detected in the …","A directed graph.","Errors in directed graph operations.","An import dependency graph.","A node in a graph.","A struct dependency graph.","Adds an edge to the graph.","","","","","","Returns true
if the graph contains the given node.","","","","","","","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","The directed edges in the graph. Each entry in the map is …","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","Initializes a new DiGraph
from a vector of source nodes.","The set of nodes in the graph.","The set of nodes in the graph.","The set of nodes in the graph.","The set of nodes in the graph.","Returns the post-order ordering of the graph. Detects if …","","","","","","","","","RenameTable
tracks the names assigned by static single …","","","","","","","","","","","","","","","Returns the argument unchanged.","The mapping from symbols to node IDs. These are used to …","","Calls U::from(self)
.","Returns the symbols that were renamed in the current scope.","Looks up the new name for symbol
, recursively checking the …","Looks up the node ID for symbol
, recursively checking the …","The mapping from names in the original AST to new names in …","Create a new RenameTable
with the given parent.","The RenameTable
of the parent scope.","","","","","Updates self.mapping
with the desired entry. Creates a new …","","A Replacer
applies replacer
to all Identifier
s in an AST. …","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","","","","","","","","","","Recursively checks if the symbol table contains an entry …","","","","","","","","","Returns the argument unchanged.","Deserializes the JSON string into a symbol table from a …","Deserializes the JSON string into a symbol table.","","Functions represents the name of each function mapped to …","","Creates a new scope for the block and stores it in the …","Inserts a function into the symbol table.","Inserts a struct into the symbol table.","Inserts a variable into the symbol table.","Calls U::from(self)
.","Returns the scope associated with the function symbol, if …","Attempts to lookup a function in the symbol table.","Returns the scope associated with index
, if it exists in …","Attempts to lookup a struct in the symbol table.","Attempts to lookup a variable in the symbol table.","Returns a mutable reference to the VariableSymbol
if it …","","The parent scope if it exists. For example, the parent …","Removes a variable from the symbol table.","Returns the current scope index. Increments the scope …","The index of the current scope.","The sub-scopes of this scope.","","Maps struct names to struct definitions. This field is …","","","Serializes the symbol table into a JSON value and removes …","Serializes the symbol table into a JSON string.","Converts the symbol table into a JSON value","","","","","Returns true if the variable exists in the local scope","Returns true if the variable exists in any parent scope","","The variables defined in a scope. This field is populated …","","Metadata associated with the finalize block.","An entry for a function in the symbol table.","The Span
associated with the function.","","","","","","","","","","","","","","","","","Metadata associated with the finalize block.","","","Returns the argument unchanged.","Returns the argument unchanged.","The index associated with the scope in the parent symbol …","","","The inputs to the finalize block.","The inputs to the function.","Calls U::from(self)
.","Calls U::from(self)
.","The output type of the finalize block.","The output type of the function.","","","","","","","","","","","","","Is this function a transition, inlined, or a regular …","","","","","","An entry for a variable in the symbol table.","An enumeration of the different types of variable type.","","","","","","","","","The type of declaration for the variable.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","The Span
associated with the variable.","","","","","","","","","","","The Type
of the variable.","","","","","A mapping between node IDs and their types.","","","","","","","","","","Returns the argument unchanged.","Gets an entry from the table.","","The inner table. RefCell
is used here to avoid &mut
all …","Inserts an entry into the table.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Whether or not the variables are necessary.","Initializes a new DeadCodeEliminator
.","A counter to generate unique node IDs.","","Reconstruct an assignment statement by eliminating any …","Reconstructs the associated function access expression.","Reconstructs the statements inside a basic block, …","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Reconstructs expression statements by eliminating any dead …","","Marks identifiers as used. This is necessary to determine …","Loop unrolling unrolls and removes iteration statements …","","Reconstruct the components of the struct init expression. …","","","","The set of used variables in the current function body.","","","","","","","A struct used to construct (unique) assignment statements.","","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","A counter used to generate unique node IDs.","Flattens an assign statement, if necessary. Marks …","","","","","","Reconstructs","Replaces a tuple access expression with the appropriate …","A wrapper around assigner.simple_assign_statement
that …","","","A mapping between variables and flattened tuple …","","A mapping between node IDs and their types.","","","","","","","A struct used to construct (unique) assignment statements.","","","Clears the state associated with ReturnStatements
, …","A stack of condition Expression
s visited up to the current …","Constructs a guard from the current state of the condition …","","","","","Fold guards and expressions into a single expression. Note …","Folds a list of return statements into a single return …","Returns the argument unchanged.","","Calls U::from(self)
.","","A counter used to generate unique node IDs.","Rewrites an assert statement into a flattened form. Assert …","Flattens an assign statement, if necessary. Marks …","Flattens the statements inside a basic block. The …","Flatten a conditional statement into a list of statements.","","","Flattens a function’s body and finalize block, if it …","","Transforms a return statement into an empty block …","Reconstructs a struct init expression, flattening any …","Reconstructs ternary expressions over arrays, structs, and …","A list containing tuples of guards and expressions …","A wrapper around assigner.simple_assign_statement
that …","The symbol table associated with the program.","","","","","","","A mapping between node IDs and their types.","A wrapper around assigner.unique_simple_assign_statement
…","","","","","","","An AssignmentRenamer
renames the left-hand side of all …","","","","Clear the internal rename table.","","","","Returns the argument unchanged.","","Calls U::from(self)
.","","Load the internal rename table with a set of entries.","Initialize a new AssignmentRenamer
.","Rename the left-hand side of the assignment statement.","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Rename the identifier if it is the left-hand side of an …","Loop unrolling unrolls and removes iteration statements …","Rename the variable initializers in the struct expression.","","","","","","","A wrapper around an Assigner used to create unique …","","","The call graph for the program.","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","Initializes a new FunctionInliner
.","A counter used to create unique NodeIDs.","Reconstruct an assignment statement by inlining any …","Reconstructs the statements inside a basic block, …","","Flattening removes conditional statements from the program.","Parsing guarantees that console statements are not present …","Static single assignment replaces definition statements …","Reconstructs expression statements by inlining any …","Loop unrolling unrolls and removes iteration statements …","","A map of reconstructed functions in the current program …","","","","A mapping between node IDs and their types.","","","","","","","Whether or not a bound is inclusive or exclusive.","","","A trait for whose implementors are concrete values for …","An iterator over a range of values.","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A table of constant variables.","Returns the index of the current scope. Note that if we …","","","","","Emits a Loop Unrolling Error","Enters a child scope.","Exits the current block scope.","Returns the argument unchanged.","An error handler used for any errors found during …","","Calls U::from(self)
.","Are we in the midst of unrolling a loop?","","A counter used to generate unique node IDs.","","","","","","","","","The index of the current scope.","The symbol table for the function being processed.","","","","A mapping from node IDs to their types.","Unrolls an IterationStatement.","A helper function to unroll a single iteration an …","","","","A compiler pass consuming Self::Input
and returning …","Runs the compiler pass.","","","","","","A struct used to construct (unique) assignment statements.","","","Consumes an access expression, accumulating any statements …","Consumes an array expression, accumulating any statements …","Consumes the expressions in an AssertStatement
, returning …","Consume all AssignStatement
s, renaming as necessary.","Consumes a binary expression, accumulating any statements …","Consumes a Block
, flattening its constituent …","Consumes a call expression without visiting the function …","Consumes a cast expression, accumulating any statements …","Consumes a ConditionalStatement
, producing phi functions …","Parsing guarantees that console statements are not present …","","Consumes the DefinitionStatement
into an AssignStatement
, …","Consumes the expressions associated with …","Reconstructs the Function
s in the Program
, while …","Produces a new Identifier
with a unique name.","","Consumes and returns the literal without making any …","","","Reconstructs the expression associated with the return …","Reconstructs records in the program, ordering its fields …","Consumes a struct initialization expression with renamed …","Consumes a ternary expression, accumulating any statements …","Consumes a tuple expression, accumulating any statements …","Consumes a unary expression, accumulating any statements …","","","","","","Returns the argument unchanged.","","Calls U::from(self)
.","A flag to determine whether or not the traversal is on the …","Initializes a new StaticSingleAssigner
with an empty …","A counter used to generate unique node IDs.","If the RenameTable has a parent, then self.rename_table
is …","Pushes a new scope, setting the current scope as the new …","The RenameTable
for the current basic block in the AST","","The SymbolTable
of the program.","","","","A mapping from node IDs to their types.","Constructs a simple assign statement for expr
with a …","","","A compiler pass during which the SymbolTable
is created. …","","","","","Runs the compiler pass.","","Returns the argument unchanged.","The error handler.","","Calls U::from(self)
.","","The SymbolTable
constructed by this compiler pass.","","","","","","","","","","","","","","","","","","","","","","","","","Emits an error to the error handler if the given type is …","Use this method when you know the actual type. Emits an …","Emits an error if the type is not an array.","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not an …","Emits an error to the handler if the given type is not a …","Emits an error if the type is not a mapping.","Emits an error if the struct member is a record type.","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the handler if the given type is not a …","Emits an error to the error handler if the actual
type is …","Emits an error if the type or its constituent types is not …","Emits an error to the handler if the given type is not an …","","","The call graph for the program.","Type checks the inputs to a core function call and returns …","Emits an error if the two given types are not equal.","Returns the struct
type and emits an error if the expected
…","Emits an error to the handler if the given type is invalid.","Creates a new child scope.","","","","","Emits a type checker error.","Enters a child scope.","Exits the current scope.","Returns the argument unchanged.","The name of the function that we are currently traversing.","Type checks the inputs to an associated constant and …","Emits an error if the struct
is not a core library struct. …","The error handler.","Whether or not the function that we are currently …","Whether or not the function that we are currently …","","Calls U::from(self)
.","Whether or not we are currently traversing a finalize …","Whether or not we are currently traversing an imported …","Whether or not we are currently traversing a return …","Returns a new type checker given a symbol table and error …","A dependency graph of the structs in program.","The symbol table for the program.","","","","A mapping from node IDs to their types.","","The variant of the function that we are currently …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,0,0,0,0,0,46,47,46,47,46,47,46,47,47,46,47,46,47,46,47,46,47,46,47,46,47,46,47,46,46,47,46,47,46,47,46,47,46,47,46,47,46,47,46,47,0,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,0,64,0,0,0,0,0,61,64,61,64,61,61,61,64,61,64,61,64,61,5,6,109,61,64,61,64,61,64,61,64,61,61,5,6,109,61,61,64,61,64,61,64,61,64,61,0,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,0,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,3,3,0,0,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,74,76,74,76,74,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,76,74,74,76,74,77,77,77,0,0,77,73,77,73,77,73,77,73,73,77,73,77,73,77,73,77,73,77,73,77,77,77,77,73,73,73,73,77,77,73,73,77,73,77,73,77,73,77,73,73,77,73,77,73,77,73,77,73,77,73,73,77,73,77,73,0,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,0,0,0,0,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,0,0,0,0,0,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,82,0,0,0,0,0,0,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,86,0,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,0,0,0,0,0,0,90,90,0,0,90,91,90,91,91,91,91,90,91,90,91,90,91,91,90,91,90,91,90,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,90,91,90,91,90,91,90,91,0,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,110,110,0,110,0,0,0,0,0,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,0,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,0,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104,104],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],0,0,0,[[],1],[-1,-2,[],[]],0,[[3,4,5,6,7],8],0,0,0,0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,0,[[8,11],[[2,[12,12]]]],[[8,13],[[2,[12,12]]]],[[8,14],[[2,[12,12]]]],[[8,15],12],[[8,16],12],[[8,17],[[2,[12,12]]]],[[8,18],[[2,[12,12]]]],[[8,19],[[2,[12,12]]]],[[8,20],12],[[8,21],[[2,[12,12]]]],[[8,22],[[2,[12,12]]]],[[8,23],12],[[8,24],12],[[8,25],12],[[8,26],[[2,[12,12]]]],[[8,27],[[2,[12,12]]]],[[8,28],12],[[8,29],12],[[8,30],[[2,[12,12]]]],[[8,31,7],12],[[8,32],12],[[8,33],12],[[8,34],[[2,[12,12]]]],[[8,7],12],[[8,35],12],[[8,36],12],[[8,37],12],[[8,35],12],[[8,38],[[2,[12,12]]]],[[8,35],12],[[8,39],[[2,[12,12]]]],[[8,40],[[2,[12,12]]]],[41,12],[[8,41,42],12],[[8,43],[[2,[12,12]]]],[[8,44],[[2,[12,12]]]],[[8,45],[[2,[12,12]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[46,46],[47,47],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[[],46],[[],47],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],[[46,48],49],[[47,48],49],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],0,[-1,-2,[],[]],[-1,-2,[],[]],[[46,30,27,50],37],[[47,30,27,50],37],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[[46,-1,-2],31,51,51],[[47,-1,-2],31,51,51],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[52,52],[[-1,-2],2,[],[]],[[52,31],53],[[52,31],53],0,[[],52],[1,-1,[]],[1,-1,[]],[-1,[[9,[52]]],54],[1,2],[[52,48],49],[-1,-1,[]],[[],1],[52,1],[[52,31,27],[[55,[2]]]],[52,[[55,[2]]]],[-1,-2,[],[]],[[52,31],[[56,[27]]]],[[52,1],[[56,[[57,[52]]]]]],0,[52,1],0,0,[[52,-1],9,58],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,0,0,0,0,[[[61,[-1]],-1,-1],2,62],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[[61,[-1]],-1,[63,[-1]],[63,[-1]]],[[56,[-1]]],62],[[[61,[-1]],-1],53,62],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],0,0,0,0,[[[64,[-1]],48],49,[65,62]],[[[61,[-1]],48],49,[65,62]],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[[[63,[-1]]],[[61,[-1]]],62],0,0,0,0,[[[61,[-1]]],[[9,[[63,[-1]],[64,[-1]]]]],62],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[66,66],[[-1,-2],2,[],[]],[[],66],[1,-1,[]],[1,-1,[]],[1,2],[[66,66],53],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[66,48],49],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],[66,[[0,[67]]]],[[66,31],[[56,[31]]]],[[66,31],[[56,[50]]]],0,[[[56,[[68,[66]]]]],66],0,[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[66,31,31,50],2],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[-1,[[69,[-1]]],70],[[[69,[-1]],30],[[2,[27]]],70],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[[3,31,71],[[55,[2]]]],[3,3],[[-1,-2],2,[],[]],[[],3],[1,-1,[]],[1,-1,[]],[-1,[[9,[3]]],54],[1,2],[[3,48],49],[-1,-1,[]],[72,[[55,[3]]]],[60,[[55,[3]]]],0,0,[[],1],[3,1],[[3,31,29],[[55,[2]]]],[[3,31,35],[[55,[2]]]],[[3,31,73],[[55,[2]]]],[-1,-2,[],[]],[[3,31],[[56,[[57,[3]]]]]],[[3,31],[[56,[74]]]],[[3,1],[[56,[[57,[3]]]]]],[[3,31],[[56,[35]]]],[[3,31],[[56,[73]]]],[[3,31],[[56,[73]]]],[[1,29],74],0,[[3,31],2],[3,1],0,0,[[3,-1],9,58],0,[[59,60],[[9,[-1]]],[]],[[3,72,60],[[55,[2]]]],[[3,72,60,[75,[60]]],[[55,[2]]]],[3,[[55,[12]]]],[3,[[55,[59]]]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[3,31],53],[[3,31],53],0,0,[-1,-2,[],[]],0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[76,76],[74,74],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[-1,[[9,[76]]],54],[-1,[[9,[74]]],54],[1,2],[1,2],0,[[76,48],49],[[74,48],49],[-1,-1,[]],[-1,-1,[]],0,[[],1],[[],1],0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,[[76,-1],9,58],[[74,-1],9,58],[[59,60],[[9,[-1]]],[]],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[77,77],[73,73],[[-1,-2],2,[],[]],[[-1,-2],2,[],[]],0,[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[-1,[[9,[77]]],54],[-1,[[9,[73]]],54],[1,2],[1,2],[[77,77],53],[[73,73],53],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[-1,-2],53,[],[]],[[77,48],49],[[77,48],49],[[73,48],49],[[73,48],49],[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[[77,-1],9,58],[[73,-1],9,58],0,[[59,60],[[9,[-1]]],[]],[[59,60],[[9,[-1]]],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,12,[]],[-1,12,[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],0,[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[4,4],[[-1,-2],2,[],[]],[[],4],[1,-1,[]],[1,-1,[]],[1,2],[[4,48],49],[-1,-1,[]],[[4,50],[[56,[41]]]],[[],1],0,[[4,50,41],2],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[78,79],0,[[79,15],[[2,[37]]]],[[79,16],[[2,[37]]]],[[79,18],[[2,[27]]]],[[79,20],[[2,[20]]]],[[79,23],[[2,[37]]]],[[79,24],[[2,[37]]]],[[79,25],[[2,[37]]]],[[79,28],[[2,[37]]]],[[79,29],29],[[79,30],[[2,[27]]]],[[79,32],[[2,[37]]]],[[79,36],[[2,[37]]]],[[79,38],[[2,[27]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[4,78,46],80],0,[[80,16],[[2,[37]]]],[[80,20],[[2,[20]]]],[[80,23],[[2,[37]]]],[[80,24],[[2,[37]]]],[[80,25],[[2,[37]]]],[[80,32],[[2,[37]]]],[[80,36],[[2,[37]]]],[[80,81],[[2,[27]]]],[[80,30,27],37],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],0,[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[82,[[83,[[2,[[56,[27]],36]]]]]],0,[82,[[56,[27]]]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[82,60,[83,[[2,[[56,[27]],27]]]]],[[2,[27,[83,[37]]]]]],[[82,20,[83,[[2,[[56,[27]],36]]]]],2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[3,4,78,46],82],0,[[82,15],[[2,[37]]]],[[82,16],[[2,[37]]]],[[82,20],[[2,[20]]]],[[82,23],[[2,[37]]]],[[82,24],[[2,[37]]]],[[82,25],[[2,[37]]]],[[82,29],29],[[82,32],[[2,[37]]]],[[82,36],[[2,[37]]]],[[82,38],[[2,[27]]]],[[82,39],[[2,[27]]]],0,[[82,30,27],37],0,[[82,84,27,30,30],[[2,[27,[83,[37]]]]]],[[82,35,27,30,30],[[2,[27,[83,[37]]]]]],[[82,85,27,30,30],[[2,[27,[83,[37]]]]]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[82,27],[[2,[30,37]]]],[-1,-2,[],[]],0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[86,2],[1,-1,[]],[1,-1,[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[[86,-1],2,67],[46,86],[[86,16],[[2,[37]]]],[[86,23],[[2,[37]]]],[[86,24],[[2,[37]]]],[[86,25],[[2,[37]]]],[[86,30],[[2,[27]]]],[[86,32],[[2,[37]]]],[[86,38],[[2,[27]]]],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],0,[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],[[78,6,46,4],87],0,[[87,16],[[2,[37]]]],[[87,20],[[2,[20]]]],[[87,21],[[2,[27]]]],[[87,23],[[2,[37]]]],[[87,24],[[2,[37]]]],[[87,25],[[2,[37]]]],[[87,28],[[2,[37]]]],[[87,32],[[2,[37]]]],[[87,88],88],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[-1,-2,[],[]],0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[89,[-2]]],[],[]],0,0,[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,-1,[]],[1,2],[1,2],0,[-1,-1,[]],[-1,-1,[]],[[],1],[[],1],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[2,[-2,-3,-4,-5,-6]]],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5]]],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10]]],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8]]],[],[],[],[],[],[],[],[]],[-1,2,[]],[-1,[[2,[-2,-3,-4,-5,-6,-7]]],[],[],[],[],[],[],[]],[-1,[[2,[-2]]],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9]]],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9]]],[],[],[],[],[],[],[],[],[]],[-1,2,[]],[-1,[[2,[-2,-3,-4,-5]]],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]]],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11]]],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6]]],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4]]],[],[],[],[]],[-1,[[2,[-2]]],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7]]],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3]]],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8]]],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12,-13]]],[],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12,-13]]],[],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10]]],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11]]],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3]]],[],[],[]],[-1,[[2,[-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12]]],[],[],[],[],[],[],[],[],[],[],[],[]],[-1,[[2,[-2,-3,-4]]],[],[],[],[]],[[-1,-1,90],[[91,[-1]]],92],[[[91,[-1]]],56,92],[-1,[[93,[-2]]],[],[]],[-1,[[94,[-2]]],[],[]],[-1,[[93,[-2]]],[],[]],[-1,[[94,[-2]]],[],[]],[[-1,95],[[96,[-2]]],[],[]],[-1,[[97,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[-1,10,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,-2,[],[]],[-1,-2,[],[]],0,[98,1],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[98,99],2],[[98,1],1],[[98,1],2],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],0,[[3,4,100,78],98],0,[[98,14],[[2,[27]]]],[[98,20],[[2,[20]]]],[[98,101],[[2,[37]]]],[[98,25],[[2,[37]]]],[[98,29],29],[[98,30],[[2,[27]]]],[[98,32],[[2,[37]]]],[[98,88],88],0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[98,32],37],[[98,32,-1],37,92],[-1,-2,[],[]],0,0,0,[[]],0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[[102,11]],[[102,13]],[[102,15]],[[102,16]],[[102,19]],[[102,20]],[[102,21]],[[102,22]],[[102,23]],[[102,24]],[[102,101]],[[102,25]],[[102,28]],[[102,29]],[[102,30]],[[102,32]],[[102,45]],[[102,7]],[[102,88]],[[102,36]],[[102,35]],[[102,38]],[[102,39]],[[102,40]],[[102,43]],[[102,44]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],[[],1],[-1,-2,[],[]],0,[[78,3,4,46],102],0,[102,66],[102,2],0,[[102,30,27],37],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[102,27],[[2,[30,37]]]],[-1,-2,[],[]],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[1,-1,[]],[1,-1,[]],[[]],[1,2],[-1,-1,[]],0,[[],1],[-1,-2,[],[]],[100,103],0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],[[103,29],2],[[103,7],2],[[103,33],2],[[103,35],2],[-1,-2,[],[]],0,0,0,0,[[[56,[41]],[56,[41]],[56,[41]]],[[56,[41]]]],0,0,0,0,0,0,0,0,0,0,0,[[104,[56,[41]],71],2],[[104,41,[56,[41]],71],41],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],[[56,[105]]]],[[104,71,31,41],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],71],2],[[104,[56,[41]],41,71],2],[[104,41,71],53],[[104,[56,[41]],71],2],[-1,-2,[],[]],[-1,-2,[],[]],0,[[104,106,[75,[[2,[[56,[41]],71]]]],71],[[56,[41]]]],[[104,[56,[41]],[56,[41]],71],2],[[104,30,[56,[41]],71],41],[[104,-1,12,[56,[41]],71],2,70],[104,1],[1,-1,[]],[1,-1,[]],[[]],[1,2],[[104,107],2],[[104,1],2],[[104,1],2],[-1,-1,[]],0,[[104,41,30],[[56,[108]]]],[[104,41,30],[[56,[106]]]],0,0,0,[[],1],[-1,-2,[],[]],0,0,0,[[3,4,100],104],0,0,[-1,[[9,[-2]]],[],[]],[-1,[[9,[-2]]],[],[]],[-1,10,[]],0,[[[75,[41]]],12],0,[[104,11]],[[104,13]],[[104,15],2],[[104,16],2],[[104,19]],[[104,20],2],[[104,21]],[[104,22]],[[104,23],2],[[104,24],2],[[104,101],2],[[104,25],2],[[104,26]],[[104,27]],[[104,28],2],[[104,29],2],[[104,30]],[[104,32],2],[[104,45]],[[104,33],2],[[104,7],2],[[104,88],2],[[104,36],2],[[104,37],2],[[104,35],2],[[104,38]],[[104,39]],[[104,40]],[[104,43]],[[104,44]],[-1,-2,[],[]]],"c":[],"p":[[15,"usize"],[15,"tuple"],[3,"SymbolTable",257],[3,"TypeTable",416],[6,"StructGraph",164],[6,"CallGraph",164],[3,"Program",906],[3,"CodeGenerator",16],[4,"Result",907],[3,"TypeId",908],[4,"AccessExpression",909],[3,"String",910],[3,"ArrayExpression",911],[3,"ArrayAccess",912],[3,"AssertStatement",913],[3,"AssignStatement",914],[3,"AssociatedConstant",915],[3,"AssociatedFunction",916],[3,"BinaryExpression",917],[3,"Block",918],[3,"CallExpression",919],[3,"CastExpression",920],[3,"ConditionalStatement",921],[3,"ConsoleStatement",922],[3,"DefinitionStatement",923],[3,"ErrExpression",924],[4,"Expression",925],[3,"ExpressionStatement",926],[3,"Function",927],[3,"Identifier",928],[3,"Symbol",929],[3,"IterationStatement",930],[3,"Mapping",931],[3,"MemberAccess",932],[3,"Struct",933],[3,"ReturnStatement",934],[4,"Statement",935],[3,"StructExpression",936],[3,"TernaryExpression",937],[3,"TupleExpression",938],[4,"Type",939],[4,"Mode",940],[3,"UnaryExpression",941],[3,"UnitExpression",942],[4,"Literal",943],[3,"Assigner",89],[3,"AssignerInner",89],[3,"Formatter",944],[6,"Result",944],[6,"NodeID",945],[8,"Display",944],[3,"ConstantPropagationTable",131],[15,"bool"],[8,"Deserializer",946],[6,"Result",947],[4,"Option",948],[3,"RefCell",949],[8,"Serializer",950],[4,"Value",951],[15,"str"],[3,"DiGraph",164],[8,"Node",164],[3,"IndexSet",952],[4,"DiGraphError",164],[8,"Debug",944],[3,"RenameTable",210],[8,"Iterator",953],[3,"Box",954],[3,"Replacer",241],[8,"Fn",955],[3,"Span",956],[3,"PathBuf",957],[3,"VariableSymbol",356],[3,"FunctionSymbol",308],[15,"slice"],[3,"FinalizeData",308],[4,"VariableType",356],[3,"NodeBuilder",958],[3,"DeadCodeEliminator",441],[3,"Destructurer",476],[3,"TupleAccess",959],[3,"Flattener",508],[3,"Vec",960],[3,"ArrayType",961],[3,"TupleType",962],[3,"AssignmentRenamer",554],[3,"FunctionInliner",580],[3,"ProgramScope",963],[3,"Replacements",964],[4,"Clusivity",614],[3,"RangeIterator",614],[8,"LoopBound",614],[3,"Recompositions",965],[3,"Decompositions",966],[3,"ProgressBar",967],[3,"ProgressBarIter",968],[3,"StreamSafe",969],[3,"Unroller",682],[4,"LoopUnrollerError",970],[3,"Handler",971],[3,"ConstDeclaration",972],[3,"StaticSingleAssigner",726],[3,"SymbolTableCreator",778],[3,"TypeChecker",804],[3,"MappingType",973],[4,"CoreFunction",974],[4,"TypeCheckerError",975],[4,"CoreConstant",976],[6,"ImportGraph",164],[8,"Pass",718]],"b":[[388,"impl-Display-for-VariableType"],[389,"impl-Debug-for-VariableType"],[390,"impl-Display-for-VariableSymbol"],[391,"impl-Debug-for-VariableSymbol"]]},\
"leo_span":{"doc":"","t":"CCAAACANEDDNDDDDFLLLLLLLLLLLLLLLMLLLLMMMLLLLLMLLLLLLLLLLLLLLLMLLLLLLLFMLMMMLLLMMLLFFMFMMMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMDDIDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLKLLLLMOLLLLMLLLLLLLLLLLKLLKLLLLLLLLLLLDLLFLLLLFLLLLDEDNRHDNDLLLLLLLLLLLLLLLLOFLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMOAMOLLLLLLLLLLLLLLLLLFRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR","n":["Span","Symbol","source_map","span","span_json","sym","symbol","Custom","FileName","LineCol","MultiByteChar","Real","SourceFile","SourceMap","SourceMapInner","SpanLocation","analyze_source_file","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bytepos_to_file_charpos","bytes","clone","clone","clone_into","clone_into","col","col_start","col_stop","contents_of_span","contents_of_span","default","default","dummy","end_pos","eq","equivalent","equivalent","find_line_col","find_source_file","find_source_file_index","fmt","fmt","from","from","from","from","from","from","from","inner","into","into","into","into","into","into","into","is_not_test_framework","line","line_contents_of_span","line_start","line_stop","lines","load_file","lookup_file_pos","lookup_line","multibyte_chars","name","new","new_source","normalize_newlines","normalize_src","pos","remove_bom","source_file","source_file","source_files","span_to_location","span_to_string","src","start_pos","to_owned","to_owned","to_string","try_allocate_address_space","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","used_address_space","BytePos","CharPos","Pos","Span","add","add","add","add","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","cmp","cmp","default","default","deserialize","deserialize","dummy","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from_u32","from_u32","from_u32","from_usize","from_usize","from_usize","hash","hash","hi","impl_pos","into","into","into","is_dummy","lo","new","partial_cmp","partial_cmp","serialize","serialize","sub","sub","to_owned","to_owned","to_owned","to_string","to_u32","to_u32","to_u32","to_usize","to_usize","to_usize","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","SpanMapVisitor","borrow","borrow_mut","deserialize","expecting","fmt","from","into","serialize","try_from","try_into","type_id","visit_map","InnerInterner","InternedStr","Interner","Owned","PRE_DEFINED","SESSION_GLOBALS","SessionGlobals","Static","Symbol","as_str","as_u32","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","cmp","consts","create_session_if_not_set_then","default","deref","deserialize","eq","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","from","from","from","from","from","get","hash","hash","inner","intern","intern","into","into","into","into","into","new","partial_cmp","prefill","prefilled","serde_from_symbol","serde_to_symbol","serialize","set","source_map","strings","sym","symbol_interner","symbols","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","with_session_globals","As","BHP1024","BHP256","BHP512","BHP768","ChaCha","Const","Else","False","For","GEN","If","In","Keccak256","Keccak384","Keccak512","Let","Mapping","Mod","Mut","Pedersen128","Pedersen64","Poseidon2","Poseidon4","Poseidon8","Return","SHA3_256","SHA3_384","SHA3_512","SelfLower","SelfUpper","Star","Struct","True","Type","_nonce","abs","abs_wrapped","add","add_wrapped","address","aleo","and","assert","assert_eq","assert_neq","block","bool","caller","commit_to_address","commit_to_field","commit_to_group","console","constant","contains","decrement","div","div_wrapped","double","eq","field","finalize","function","get","get_or_use","group","gt","gte","hash_to_address","hash_to_field","hash_to_group","hash_to_i128","hash_to_i16","hash_to_i32","hash_to_i64","hash_to_i8","hash_to_scalar","hash_to_u128","hash_to_u16","hash_to_u32","hash_to_u64","hash_to_u8","height","i128","i16","i32","i64","i8","import","increment","inline","input","inv","leo","lt","lte","main","mapping","mul","mul_wrapped","nand","neg","neq","nor","not","or","owner","pow","pow_wrapped","private","program","public","rand_address","rand_bool","rand_field","rand_group","rand_i128","rand_i16","rand_i32","rand_i64","rand_i8","rand_scalar","rand_u128","rand_u16","rand_u32","rand_u64","rand_u8","record","rem","rem_wrapped","remove","scalar","set","shl","shl_wrapped","shr","shr_wrapped","signature","signer","square","square_root","string","sub","sub_wrapped","then","to_x_coordinate","to_y_coordinate","transition","u128","u16","u32","u64","u8","verify","xor"],"q":[[0,"leo_span"],[7,"leo_span::source_map"],[119,"leo_span::span"],[203,"leo_span::span_json"],[216,"leo_span::symbol"],[301,"leo_span::symbol::sym"],[456,"alloc::vec"],[457,"alloc::string"],[458,"core::option"],[459,"alloc::rc"],[460,"core::fmt"],[461,"core::fmt"],[462,"std::io::error"],[463,"core::result"],[464,"core::any"],[465,"core::cmp"],[466,"serde::de"],[467,"core::hash"],[468,"serde::ser"],[469,"core::fmt"],[470,"core::num::nonzero"]],"d":["","","","Defines the Span
type used to track where code comes from.","Provides custom serialize/deserialize implementations for …","","","Any sort of description for a source.","A file name.","File / Line / Column information on a BytePos
.","Identifies an offset of a multi-byte character in a …","A real file.","A single source in the SourceMap
.","The source map containing all recorded sources, methods to …","Actual data of the source map. We use this setup for …","Detailed information on a Span
.","Finds all newlines, multi-byte characters, and non-narrow …","","","","","","","","","","","","","","","Converts an absolute BytePos
to a CharPos
relative to the …","The number of bytes, >= 2
.","","","","","The (0-based) column offset into the line.","","","Returns contents of a span
assumed to be within the given …","Returns the source contents that is spanned by span
.","","","Returns a dummy location.","The end position of this source in the SourceMap
.","","","","Finds line column info about a given pos
.","Find the source file containing pos
.","Find the index for the source file containing pos
.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","The actual source map data.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Is the env var LEO_TESTFRAMEWORK
not enabled?","The 1-based line number.","Returns the source contents of the lines that span
is …","","","Locations of line beginnings in the source code.","Loads the given path
and returns a SourceFile
for it.","Looks up the file’s (1-based) line number and (0-based …","Finds the line containing the given position. The return …","Locations of multi-byte characters in the source code.","The name of the file that the source came from.","Creates a new SourceMap
given the file name
, source …","Registers source
under the given file name
, returning a …","Replaces \\\\r\\\\n
with \\\\n
in-place in src
.","Normalizes the source code and records the normalizations.","The absolute offset of the character in the SourceMap
.","Removes UTF-8 BOM, if any.","","Information on the original source.","All the source files recorded thus far.","Retrives the location (source file, line, col) on the …","Returns a displayable representation of the span
as a …","The complete source code.","The start position of this source in the SourceMap
.","","","","Attempt reserving address space for size
number of bytes.","","","","","","","","","","","","","","","","","","","","","","The address space below this value is currently used by …","A byte offset.","A character offset.","Offsets (i.e. positions), in some units (e.g. bytes or …","The span type which tracks where formatted errors …","Add two spans (by reference) together.","Add two spans together. The resulting span is the smallest …","","","","","","","","","","","","","","","","","","","","","Generates a dummy span with all defaults. Should only be …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","The end (high) position of the span, exclusive. The length …","Generate one-component tuple structs that implement the Pos
…","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Is the span a dummy?","The start (low) position of the span, inclusive.","Generate a new span from the start
ing and end
ing positions.","","","","","","","","","","","","","","","","","","","","","","","","","","This visitor is used by the deserializer to unwrap mappings","","","Custom deserialization to enable removing spans from enums.","","","Returns the argument unchanged.","Calls U::from(self)
.","The AST contains a few tuple-like enum variants that …","","","","","The inner interner. This construction is used to get …","An interned string, either prefilled “at compile time” …","A symbol-to-string interner.","String is constructed and stored during runtime.","","","All the globals for a compiler sessions.","String is stored “at compile time”, i.e. prefilled.","An interned string.","Convert to effectively a &'static str
given the …","Converts this symbol to the raw index.","","","","","","","","","","","","","","","A helper for symbols
defined below. The macro’s job is …","Creates the session globals and then runs the closure f
.","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the corresponding string for the given symbol.","","","","Interns string
, returning a Symbol
corresponding to it.","Maps a string to its interned representation.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","Returns the corresponding Symbol
for the given index
.","","Returns an interner prefilled with init
.","Returns an interner prefilled with commonly used strings …","","","","Registration of strings and symbol index allocation is …","The source map used in the compiler.","A helper for symbols
defined below. The macro’s job is …","","The interner for Symbol
s used in the compiler.","Creates predefined symbols used throughout the Leo …","","","","","","","","","","","","","","","","","","Gives access to read or modify the session globals in f
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,8,0,0,0,8,0,0,0,0,0,6,14,16,11,13,8,4,6,14,16,11,13,8,4,6,4,8,4,8,4,16,14,14,6,11,11,13,14,6,4,4,4,11,11,11,8,4,6,14,16,11,13,8,4,11,6,14,16,11,13,8,4,0,16,11,14,14,6,11,6,6,6,6,6,11,0,0,4,0,14,16,13,11,11,6,6,8,4,8,13,6,14,16,11,13,8,4,6,14,16,11,13,8,4,6,14,16,11,13,8,4,13,0,0,0,0,9,9,2,7,9,2,7,9,2,7,9,2,7,9,2,7,2,7,9,2,9,2,9,9,2,7,9,9,2,2,7,7,9,9,2,7,9,2,7,40,2,7,40,2,7,9,2,9,0,9,2,7,9,9,9,2,7,9,2,2,7,9,2,7,9,40,2,7,40,2,7,9,2,7,9,2,7,9,2,7,0,30,30,0,30,30,30,30,0,30,30,30,30,0,0,0,36,0,0,0,36,0,33,33,34,41,37,33,36,36,34,41,37,33,36,33,33,33,0,0,34,36,33,33,36,33,33,36,36,33,33,34,41,37,33,36,37,33,36,37,37,33,34,41,37,33,36,33,33,37,37,33,33,33,41,34,0,0,34,0,33,33,34,41,37,33,36,34,41,37,33,36,34,41,37,33,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2],[[5,[[3,[2]],[3,[4]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[6,2],7],0,[8,8],[4,4],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],0,0,0,[[6,9],10],[[11,9],[[12,[10]]]],[[],11],[[],13],[[],14],0,[[4,4],15],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[11,2],[[12,[16]]]],[[11,2],[[12,[[17,[6]]]]]],[[11,2],[[12,[18]]]],[[8,19],20],[[4,19],20],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[],15],0,[[11,9],[[12,[10]]]],0,0,0,[[11,21],[[22,[[17,[6]]]]]],[[6,2],[[5,[18,7]]]],[[6,2],[[12,[18]]]],0,0,[[8,10,2],6],[[11,1,8],[[17,[6]]]],[10,5],[10,5],0,[10,5],0,0,0,[[11,9],[[12,[14]]]],[[11,9],10],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,10,[]],[[13,23],[[12,[2]]]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],0,0,0,0,0,[[9,9],9],[[9,9],9],[[2,2],2],[[7,7],7],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[9,9],[2,2],[7,7],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[[-1,-2],5,[],[]],[[2,2],26],[[7,7],26],[[],9],[[],2],[-1,[[24,[9]]],27],[-1,[[24,[2]]],27],[[],9],[[9,9],15],[[2,2],15],[[7,7],15],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[9,19],20],[[9,19],20],[[2,19],20],[[7,19],20],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[23,-1,[]],[23,2],[23,7],[18,-1,[]],[18,2],[18,7],[[9,-1],5,28],[[2,-1],5,28],0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[9,15],0,[[2,2],9],[[2,2],[[12,[26]]]],[[7,7],[[12,[26]]]],[[9,-1],24,29],[[2,-1],24,29],[[2,2],2],[[7,7],7],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,10,[]],[-1,23,[]],[2,23],[7,23],[-1,18,[]],[2,18],[7,18],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[24,[9]]],27],[[30,19],20],[[-1,19],[[24,[5,31]]],[]],[-1,-1,[]],[-1,-2,[],[]],[[9,-1],24,29],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,25,[]],[[30,-1],24,32],0,0,0,0,0,0,0,0,0,[[33,34,-1],-2,35,[]],[33,23],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[36,1],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[33,33],[[-1,-2],5,[],[]],[[33,33],26],0,[-1,-2,35,[]],[[],34],[36],[-1,[[24,[33]]],27],[[33,33],15],[[36,36],15],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[-1,-2],15,[],[]],[[33,19],20],[[33,19],20],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[37,33,-1],-2,35,[]],[[33,-1],5,28],[[36,-1],5,28],0,[[37,1],33],[1,33],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[23,33],[[33,33],[[12,[26]]]],[[[38,[1]]],37],[[],37],[[39,-1],24,29],[-1,[[24,[39]]],27],[[33,-1],24,29],0,0,0,0,0,0,[-1,-2,[],[]],[-1,10,[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,[[24,[-2]]],[],[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,25,[]],[-1,-2,35,[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"c":[],"p":[[15,"str"],[3,"BytePos",119],[3,"Vec",456],[3,"MultiByteChar",7],[15,"tuple"],[3,"SourceFile",7],[3,"CharPos",119],[4,"FileName",7],[3,"Span",119],[3,"String",457],[3,"SourceMap",7],[4,"Option",458],[3,"SourceMapInner",7],[3,"SpanLocation",7],[15,"bool"],[3,"LineCol",7],[3,"Rc",459],[15,"usize"],[3,"Formatter",460],[6,"Result",460],[3,"Path",461],[6,"Result",462],[15,"u32"],[4,"Result",463],[3,"TypeId",464],[4,"Ordering",465],[8,"Deserializer",466],[8,"Hasher",467],[8,"Serializer",468],[3,"SpanMapVisitor",203],[3,"Error",460],[8,"MapAccess",466],[3,"Symbol",216],[3,"SessionGlobals",216],[8,"FnOnce",469],[4,"InternedStr",216],[3,"Interner",216],[15,"slice"],[3,"NonZeroU32",470],[8,"Pos",119],[3,"InnerInterner",216]],"b":[[123,"impl-Add-for-%26Span"],[124,"impl-Add-for-Span"],[155,"impl-Display-for-Span"],[156,"impl-Debug-for-Span"],[252,"impl-Debug-for-Symbol"],[253,"impl-Display-for-Symbol"]]},\
"leo_test_framework":{"doc":"The test framework to run integration tests with Leo code …","t":"AAAAANNNNNEDNNLLLLFMLLLLLLMLLLLLLLMMMMMMMMMMMMMMMMFFFDLLLLLMLLMMLLLLLNNIEIDDNLLLLLLLLMMLLLMMLLLLFLLLFLLMLKMMLKKFFFMLLLLLLLLLLNNNDELLLLLLLLLLLLLMMFLLLLLLMLLLLLLLLLL","n":["error","fetch","output","runner","test","FailedAndShouldntHave","MismatchedTestExpectationLength","MissingTestConfig","Panicked","PassedAndShouldntHave","TestError","TestFailure","UnexpectedError","UnexpectedOutput","borrow","borrow","borrow_mut","borrow_mut","emit_errors","errors","fmt","fmt","from","from","into","into","path","to_string","try_from","try_from","try_into","try_into","type_id","type_id","error","error","expected","expected","index","index","index","index","index","output","output","test","test","test","test","test","find_tests","split_tests_one_line","split_tests_two_line","TestExpectation","borrow","borrow_mut","clone","clone_into","deserialize","expectation","from","into","namespace","outputs","serialize","to_owned","try_from","try_into","type_id","ContinuousLines","Line","Namespace","ParseType","Runner","Test","TestCases","Whole","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","config","content","eq","equivalent","equivalent","expectation_category","fail_categories","fmt","from","from","from","get_benches","into","into","into","is_env_var_set","load_expectations","load_tests","name","new","parse_type","path","path_prefix","process_tests","resolve_namespace","run_test","run_tests","set_hook","take_hook","tests","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","Fail","Pass","Skip","TestConfig","TestExpectationMode","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","eq","equivalent","equivalent","expectation","extra","extract_test_config","fmt","fmt","from","from","into","into","namespace","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id"],"q":[[0,"leo_test_framework"],[5,"leo_test_framework::error"],[34,"leo_test_framework::error::TestError"],[50,"leo_test_framework::fetch"],[53,"leo_test_framework::output"],[69,"leo_test_framework::runner"],[125,"leo_test_framework::test"],[163,"serde_yaml::value"],[164,"alloc::string"],[165,"core::result"],[166,"core::option"],[167,"core::fmt"],[168,"core::fmt"],[169,"std::path"],[170,"core::iter::traits::iterator"],[171,"alloc::vec"],[172,"serde::de"],[173,"serde::ser"],[174,"std::path"],[175,"core::ops::function"],[176,"std::sync::mutex"],[177,"alloc::sync"],[178,"core::any"]],"d":["","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","returns (name, content) for all benchmark samples","Calls U::from(self)
.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","","","","","","","","","","","","","","","","","The test should fail.","The test should pass.","The test should be skipped.","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self)
.","Calls U::from(self)
.","","","","","","","","","","",""],"i":[0,0,0,0,0,8,8,8,8,8,0,0,8,8,33,8,33,8,0,33,8,8,33,8,33,8,33,8,33,8,33,8,33,8,34,35,36,37,34,36,38,35,37,36,37,34,36,38,35,37,0,0,0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,19,19,0,0,0,0,0,19,28,21,19,28,21,19,19,19,28,28,19,19,19,21,21,19,28,21,19,0,28,21,19,0,21,21,28,21,26,28,21,21,29,26,0,0,0,21,19,28,21,19,28,21,19,28,21,19,5,5,5,0,0,5,23,5,23,5,23,5,23,5,23,5,5,5,23,23,0,5,23,5,23,5,23,23,5,23,5,23,5,23,5,23,5,23],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[1,[4,[[4,[2,3]],3]],5,[6,[2]],7],[[6,[8]]]],0,[[8,9],10],[[8,9],10],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[-1,3,[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,11,[]],[-1,11,[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[12,[[0,[13]]]],[1,[[14,[1]]]],[1,[[14,[3]]]],0,[-1,-2,[],[]],[-1,-2,[],[]],[15,15],[[-1,-2],16,[],[]],[-1,[[4,[15]]],17],0,[-1,-1,[]],[-1,-2,[],[]],0,0,[[15,-1],4,18],[-1,-2,[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,11,[]],0,0,0,0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[19,19],[[-1,-2],16,[],[]],0,0,[[19,19],20],[[-1,-2],20,[],[]],[[-1,-2],20,[],[]],0,0,[[19,9],10],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[[],[[14,[[16,[3,3]]]]]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[1,20],[[21,12],[[16,[22,[6,[15]]]]]],[[21,-1],[[14,[23]]],24],0,[[1,-1],[[16,[21,[14,[23]]]]],24],[-1,19,[]],0,0,[[21,[14,[23]],-1],[[14,[-2]]],25,[]],[[-1,1],[[6,[[27,[26]]]]],[]],[[-1,28],[[4,[2,3]]],[]],[[-1,1],16,29],[[],[[31,[[30,[[6,[3]]]]]]]],[[[4,[[4,[2,3]],[27,[32]]]],[31,[[30,[[6,[3]]]]]]],[[4,[[4,[2,3]],3]]]],0,[-1,-2,[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,11,[]],[-1,11,[]],[-1,11,[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[5,5],[23,23],[[-1,-2],16,[],[]],[[-1,-2],16,[],[]],[-1,[[4,[5]]],17],[-1,[[4,[23]]],17],[[5,5],20],[[-1,-2],20,[],[]],[[-1,-2],20,[],[]],0,0,[1,[[6,[23]]]],[[5,9],10],[[23,9],10],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],0,[[5,-1],4,18],[[23,-1],4,18],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,[[4,[-2]]],[],[]],[-1,11,[]],[-1,11,[]]],"c":[],"p":[[15,"str"],[4,"Value",163],[3,"String",164],[4,"Result",165],[4,"TestExpectationMode",125],[4,"Option",166],[15,"usize"],[4,"TestError",5],[3,"Formatter",167],[6,"Result",167],[3,"TypeId",168],[3,"Path",169],[8,"Iterator",170],[3,"Vec",171],[3,"TestExpectation",53],[15,"tuple"],[8,"Deserializer",172],[8,"Serializer",173],[4,"ParseType",69],[15,"bool"],[3,"TestCases",69],[3,"PathBuf",169],[3,"TestConfig",125],[8,"Fn",174],[8,"FnMut",174],[8,"Namespace",69],[3,"Box",175],[3,"Test",69],[8,"Runner",69],[3,"Mutex",176],[3,"Arc",177],[8,"Any",168],[3,"TestFailure",5],[13,"Panicked",34],[13,"FailedAndShouldntHave",34],[13,"UnexpectedOutput",34],[13,"UnexpectedError",34],[13,"PassedAndShouldntHave",34]],"b":[[20,"impl-Display-for-TestError"],[21,"impl-Debug-for-TestError"]]}\
}');
diff --git a/trait.impl/clap_builder/derive/trait.Args.js b/trait.impl/clap_builder/derive/trait.Args.js
index de91e45b1f..92f9e6efa6 100644
--- a/trait.impl/clap_builder/derive/trait.Args.js
+++ b/trait.impl/clap_builder/derive/trait.Args.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_lang":[["impl Args for BuildOptions"],["impl Args for Run"],["impl Args for New"],["impl Args for Update"],["impl Args for Build"],["impl Args for Clean"],["impl Args for CLI"],["impl Args for Execute"]]
+"leo_lang":[["impl Args for New"],["impl Args for Build"],["impl Args for Execute"],["impl Args for Update"],["impl Args for CLI"],["impl Args for BuildOptions"],["impl Args for Clean"],["impl Args for Run"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/clap_builder/derive/trait.CommandFactory.js b/trait.impl/clap_builder/derive/trait.CommandFactory.js
index e532be95a8..ca42d82ae7 100644
--- a/trait.impl/clap_builder/derive/trait.CommandFactory.js
+++ b/trait.impl/clap_builder/derive/trait.CommandFactory.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_lang":[["impl CommandFactory for Commands"],["impl CommandFactory for BuildOptions"],["impl CommandFactory for Execute"],["impl CommandFactory for Clean"],["impl CommandFactory for CLI"],["impl CommandFactory for Update"],["impl CommandFactory for Run"],["impl CommandFactory for New"],["impl CommandFactory for Build"],["impl CommandFactory for Account"],["impl CommandFactory for Example"]]
+"leo_lang":[["impl CommandFactory for Update"],["impl CommandFactory for New"],["impl CommandFactory for Build"],["impl CommandFactory for Account"],["impl CommandFactory for CLI"],["impl CommandFactory for Execute"],["impl CommandFactory for Run"],["impl CommandFactory for Example"],["impl CommandFactory for Clean"],["impl CommandFactory for Commands"],["impl CommandFactory for BuildOptions"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/clap_builder/derive/trait.FromArgMatches.js b/trait.impl/clap_builder/derive/trait.FromArgMatches.js
index 9b6ed18d18..1073c03bc5 100644
--- a/trait.impl/clap_builder/derive/trait.FromArgMatches.js
+++ b/trait.impl/clap_builder/derive/trait.FromArgMatches.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_lang":[["impl FromArgMatches for New"],["impl FromArgMatches for Run"],["impl FromArgMatches for Execute"],["impl FromArgMatches for Build"],["impl FromArgMatches for Update"],["impl FromArgMatches for Example"],["impl FromArgMatches for BuildOptions"],["impl FromArgMatches for Account"],["impl FromArgMatches for CLI"],["impl FromArgMatches for Clean"],["impl FromArgMatches for Commands"]]
+"leo_lang":[["impl FromArgMatches for Build"],["impl FromArgMatches for BuildOptions"],["impl FromArgMatches for Execute"],["impl FromArgMatches for Clean"],["impl FromArgMatches for CLI"],["impl FromArgMatches for Update"],["impl FromArgMatches for Account"],["impl FromArgMatches for Run"],["impl FromArgMatches for Example"],["impl FromArgMatches for Commands"],["impl FromArgMatches for New"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/clap_builder/derive/trait.Parser.js b/trait.impl/clap_builder/derive/trait.Parser.js
index 35d7b6a05c..3b76a84bc7 100644
--- a/trait.impl/clap_builder/derive/trait.Parser.js
+++ b/trait.impl/clap_builder/derive/trait.Parser.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_lang":[["impl Parser for Execute"],["impl Parser for New"],["impl Parser for CLI"],["impl Parser for Clean"],["impl Parser for Update"],["impl Parser for Account"],["impl Parser for Build"],["impl Parser for Run"],["impl Parser for Commands"],["impl Parser for Example"],["impl Parser for BuildOptions"]]
+"leo_lang":[["impl Parser for Clean"],["impl Parser for Update"],["impl Parser for New"],["impl Parser for Build"],["impl Parser for BuildOptions"],["impl Parser for Execute"],["impl Parser for Account"],["impl Parser for Commands"],["impl Parser for CLI"],["impl Parser for Example"],["impl Parser for Run"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/clone/trait.Clone.js b/trait.impl/core/clone/trait.Clone.js
index 01d8074d2b..169720a768 100644
--- a/trait.impl/core/clone/trait.Clone.js
+++ b/trait.impl/core/clone/trait.Clone.js
@@ -1,11 +1,11 @@
(function() {var implementors = {
"leo_abnf":[["impl Clone for Scope"],["impl<'a> Clone for Processor<'a>"]],
"leo_ast":[["impl Clone for StructVariableInitializer"],["impl Clone for AssignStatement"],["impl Clone for TupleType"],["impl Clone for Mapping"],["impl Clone for ConstDeclaration"],["impl Clone for Function"],["impl Clone for BinaryOperation"],["impl Clone for MappingType"],["impl Clone for FunctionOutput"],["impl Clone for NodeBuilderInner"],["impl Clone for StaticString"],["impl Clone for InputValue"],["impl Clone for ConditionalStatement"],["impl Clone for UnitExpression"],["impl Clone for Program"],["impl Clone for Struct"],["impl Clone for ReturnStatement"],["impl Clone for NonNegativeNumber"],["impl Clone for StructExpression"],["impl Clone for Block"],["impl Clone for ProgramInput"],["impl Clone for GroupCoordinate"],["impl Clone for Ast"],["impl Clone for DefinitionStatement"],["impl Clone for Finalize"],["impl Clone for InputAst"],["impl Clone for CoreConstant"],["impl Clone for GroupTuple"],["impl Clone for UnaryExpression"],["impl Clone for Statement"],["impl Clone for Variant"],["impl Clone for Value"],["impl Clone for InputData"],["impl Clone for Annotation"],["impl Clone for ArrayExpression"],["impl Clone for BinaryExpression"],["impl Clone for ProgramScope"],["impl Clone for UnaryOperation"],["impl Clone for GroupLiteral"],["impl Clone for Member"],["impl Clone for Expression"],["impl Clone for Output"],["impl Clone for CastExpression"],["impl Clone for Section"],["impl Clone for AssertVariant"],["impl Clone for AssociatedConstant"],["impl Clone for Type"],["impl Clone for External"],["impl Clone for ArrayAccess"],["impl Clone for Mode"],["impl Clone for TernaryExpression"],["impl Clone for ErrExpression"],["impl Clone for TupleAccess"],["impl Clone for AssertStatement"],["impl Clone for Literal"],["impl Clone for MemberAccess"],["impl Clone for Input"],["impl Clone for ProgramId"],["impl Clone for FunctionInput"],["impl Clone for ArrayType"],["impl Clone for ExpressionStatement"],["impl Clone for CallExpression"],["impl Clone for NodeBuilder"],["impl Clone for TupleExpression"],["impl Clone for AccessExpression"],["impl Clone for AssociatedFunction"],["impl Clone for ConsoleStatement"],["impl Clone for IterationStatement"],["impl Clone for IntegerType"],["impl Clone for ConsoleFunction"],["impl Clone for Identifier"],["impl Clone for DeclarationType"],["impl Clone for CoreFunction"],["impl Clone for Definition"]],
-"leo_compiler":[["impl Clone for BuildOptions"],["impl Clone for CompilerOptions"],["impl<'a> Clone for Compiler<'a>"],["impl Clone for OutputOptions"]],
+"leo_compiler":[["impl Clone for OutputOptions"],["impl<'a> Clone for Compiler<'a>"],["impl Clone for BuildOptions"],["impl Clone for CompilerOptions"]],
"leo_errors":[["impl Clone for LoopUnrollerError"],["impl Clone for CliError"],["impl Clone for Formatted"],["impl Clone for FlattenError"],["impl Clone for ParserWarning"],["impl Clone for ParserError"],["impl Clone for PackageError"],["impl Clone for TypeCheckerError"],["impl Clone for AstError"],["impl Clone for InputError"],["impl Clone for CompilerError"],["impl Clone for BufferEmitter"],["impl Clone for Backtraced"]],
-"leo_lang":[["impl Clone for BuildOptions"],["impl Clone for Context"],["impl<F: Clone, T: Clone> Clone for Format<F, T>"]],
-"leo_parser":[["impl Clone for SpannedToken"],["impl Clone for Delimiter"],["impl Clone for Token"]],
-"leo_passes":[["impl Clone for SymbolTable"],["impl Clone for FinalizeData"],["impl Clone for TypeTable"],["impl Clone for ConstantPropagationTable"],["impl Clone for RenameTable"],["impl Clone for VariableType"],["impl Clone for VariableSymbol"],["impl Clone for Assigner"],["impl Clone for AssignerInner"],["impl Clone for FunctionSymbol"]],
+"leo_lang":[["impl Clone for BuildOptions"],["impl<F: Clone, T: Clone> Clone for Format<F, T>"],["impl Clone for Context"]],
+"leo_parser":[["impl Clone for Token"],["impl Clone for Delimiter"],["impl Clone for SpannedToken"]],
+"leo_passes":[["impl Clone for Assigner"],["impl Clone for VariableSymbol"],["impl Clone for AssignerInner"],["impl Clone for ConstantPropagationTable"],["impl Clone for FunctionSymbol"],["impl Clone for FinalizeData"],["impl Clone for RenameTable"],["impl Clone for SymbolTable"],["impl Clone for VariableType"],["impl Clone for TypeTable"]],
"leo_span":[["impl Clone for Span"],["impl Clone for FileName"],["impl Clone for CharPos"],["impl Clone for MultiByteChar"],["impl Clone for BytePos"],["impl Clone for Symbol"]],
"leo_test_framework":[["impl Clone for TestExpectationMode"],["impl Clone for ParseType"],["impl Clone for TestExpectation"],["impl Clone for TestConfig"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/cmp/trait.Eq.js b/trait.impl/core/cmp/trait.Eq.js
index 8e4ac34b53..15e6e00b6d 100644
--- a/trait.impl/core/cmp/trait.Eq.js
+++ b/trait.impl/core/cmp/trait.Eq.js
@@ -1,7 +1,7 @@
(function() {var implementors = {
"leo_ast":[["impl Eq for InputValue"],["impl Eq for External"],["impl Eq for Program"],["impl Eq for Struct"],["impl Eq for Mapping"],["impl Eq for UnaryOperation"],["impl Eq for TernaryExpression"],["impl Eq for Block"],["impl Eq for MappingType"],["impl Eq for Annotation"],["impl Eq for Literal"],["impl Eq for ConsoleFunction"],["impl Eq for CoreFunction"],["impl Eq for Function"],["impl Eq for Member"],["impl Eq for FunctionOutput"],["impl Eq for ArrayType"],["impl Eq for BinaryOperation"],["impl Eq for Expression"],["impl Eq for DeclarationType"],["impl Eq for StaticString"],["impl Eq for GroupLiteral"],["impl Eq for TupleExpression"],["impl Eq for Variant"],["impl Eq for Mode"],["impl Eq for Input"],["impl Eq for GroupTuple"],["impl Eq for ProgramId"],["impl Eq for Output"],["impl Eq for ProgramScope"],["impl Eq for NonNegativeNumber"],["impl Eq for GroupCoordinate"],["impl Eq for UnaryExpression"],["impl Eq for IterationStatement"],["impl Eq for ArrayAccess"],["impl Eq for Ast"],["impl Eq for StructExpression"],["impl Eq for Type"],["impl Eq for ConditionalStatement"],["impl Eq for AssertStatement"],["impl Eq for CastExpression"],["impl Eq for ConstDeclaration"],["impl Eq for Statement"],["impl Eq for Definition"],["impl Eq for Value"],["impl Eq for IntegerType"],["impl Eq for TupleAccess"],["impl Eq for BinaryExpression"],["impl Eq for DefinitionStatement"],["impl Eq for AssertVariant"],["impl Eq for StructVariableInitializer"],["impl Eq for Identifier"],["impl Eq for MemberAccess"],["impl Eq for ArrayExpression"],["impl Eq for ConsoleStatement"],["impl Eq for Finalize"],["impl Eq for AssociatedFunction"],["impl Eq for AssignStatement"],["impl Eq for FunctionInput"],["impl Eq for CallExpression"],["impl Eq for AssociatedConstant"],["impl Eq for ReturnStatement"],["impl Eq for UnitExpression"],["impl Eq for TupleType"],["impl Eq for AccessExpression"],["impl Eq for ExpressionStatement"],["impl Eq for CoreConstant"],["impl Eq for ErrExpression"]],
"leo_parser":[["impl Eq for Token"]],
-"leo_passes":[["impl Eq for RenameTable"],["impl Eq for VariableType"],["impl Eq for VariableSymbol"]],
+"leo_passes":[["impl Eq for VariableType"],["impl Eq for VariableSymbol"],["impl Eq for RenameTable"]],
"leo_span":[["impl Eq for CharPos"],["impl Eq for Span"],["impl Eq for InternedStr"],["impl Eq for MultiByteChar"],["impl Eq for BytePos"],["impl Eq for Symbol"]],
"leo_test_framework":[["impl Eq for TestExpectationMode"],["impl Eq for ParseType"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/cmp/trait.PartialEq.js b/trait.impl/core/cmp/trait.PartialEq.js
index c41dd29548..9aecc63212 100644
--- a/trait.impl/core/cmp/trait.PartialEq.js
+++ b/trait.impl/core/cmp/trait.PartialEq.js
@@ -2,7 +2,7 @@
"leo_ast":[["impl PartialEq for StructExpression"],["impl PartialEq for CallExpression"],["impl PartialEq for BinaryOperation"],["impl PartialEq for ExpressionStatement"],["impl PartialEq for Definition"],["impl PartialEq for NonNegativeNumber"],["impl PartialEq for Value"],["impl PartialEq for GroupTuple"],["impl PartialEq for Struct"],["impl PartialEq for StructVariableInitializer"],["impl PartialEq for TernaryExpression"],["impl PartialEq for ConsoleFunction"],["impl PartialEq for Block"],["impl PartialEq for Expression"],["impl PartialEq for IterationStatement"],["impl PartialEq for ArrayType"],["impl PartialEq for CoreFunction"],["impl PartialEq for StaticString"],["impl PartialEq for MemberAccess"],["impl PartialEq for ConditionalStatement"],["impl PartialEq for MappingType"],["impl PartialEq for GroupCoordinate"],["impl PartialEq for ErrExpression"],["impl PartialEq for FunctionOutput"],["impl PartialEq for Type"],["impl PartialEq for ArrayAccess"],["impl PartialEq for InputValue"],["impl PartialEq for TupleExpression"],["impl PartialEq for External"],["impl PartialEq for Mode"],["impl PartialEq for Output"],["impl PartialEq for Function"],["impl PartialEq for UnaryExpression"],["impl PartialEq for ConsoleStatement"],["impl PartialEq for TupleAccess"],["impl PartialEq for Annotation"],["impl PartialEq for DefinitionStatement"],["impl PartialEq for AssociatedFunction"],["impl PartialEq for AccessExpression"],["impl PartialEq for FunctionInput"],["impl PartialEq for Variant"],["impl PartialEq for Finalize"],["impl PartialEq for Mapping"],["impl PartialEq for TupleType"],["impl PartialEq for AssertStatement"],["impl PartialEq for DeclarationType"],["impl PartialEq for ProgramScope"],["impl PartialEq for UnaryOperation"],["impl PartialEq for BinaryExpression"],["impl PartialEq for AssignStatement"],["impl PartialEq for IntegerType"],["impl PartialEq for Identifier"],["impl PartialEq for ProgramId"],["impl PartialEq for GroupLiteral"],["impl PartialEq for Statement"],["impl PartialEq for AssociatedConstant"],["impl PartialEq for CoreConstant"],["impl PartialEq for CastExpression"],["impl PartialEq for ArrayExpression"],["impl PartialEq for ReturnStatement"],["impl PartialEq for Literal"],["impl PartialEq for ConstDeclaration"],["impl PartialEq for Input"],["impl PartialEq for UnitExpression"],["impl PartialEq for Member"],["impl PartialEq for Program"],["impl PartialEq for Ast"],["impl PartialEq for AssertVariant"]],
"leo_errors":[["impl PartialEq for Formatted"],["impl PartialEq for Backtraced"]],
"leo_parser":[["impl PartialEq for Token"]],
-"leo_passes":[["impl PartialEq for RenameTable"],["impl PartialEq for VariableSymbol"],["impl PartialEq for VariableType"]],
+"leo_passes":[["impl PartialEq for RenameTable"],["impl PartialEq for VariableType"],["impl PartialEq for VariableSymbol"]],
"leo_span":[["impl PartialEq for InternedStr"],["impl PartialEq for CharPos"],["impl PartialEq for MultiByteChar"],["impl PartialEq for BytePos"],["impl PartialEq for Symbol"],["impl PartialEq for Span"]],
-"leo_test_framework":[["impl PartialEq for TestExpectationMode"],["impl PartialEq for ParseType"]]
+"leo_test_framework":[["impl PartialEq for ParseType"],["impl PartialEq for TestExpectationMode"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/default/trait.Default.js b/trait.impl/core/default/trait.Default.js
index ccba63b7cb..038bfba86e 100644
--- a/trait.impl/core/default/trait.Default.js
+++ b/trait.impl/core/default/trait.Default.js
@@ -1,9 +1,9 @@
(function() {var implementors = {
"leo_ast":[["impl Default for StaticString"],["impl Default for InputData"],["impl Default for Program"],["impl Default for NodeBuilder"],["impl Default for ProgramInput"],["impl Default for Ast"]],
-"leo_compiler":[["impl Default for BuildOptions"],["impl Default for OutputOptions"],["impl Default for CompilerOptions"]],
+"leo_compiler":[["impl Default for CompilerOptions"],["impl Default for OutputOptions"],["impl Default for BuildOptions"]],
"leo_errors":[["impl Default for Handler"],["impl Default for Backtraced"],["impl Default for Formatted"],["impl Default for BufferEmitter"],["impl<T> Default for Buffer<T>"]],
-"leo_lang":[["impl Default for BuildOptions"],["impl Default for Format<Full, SystemTime>"]],
-"leo_package":[["impl<N: Default + Network> Default for Env<N>"],["impl Default for Gitignore"]],
-"leo_passes":[["impl Default for RenameTable"],["impl Default for Assigner"],["impl Default for AssignerInner"],["impl Default for SymbolTable"],["impl Default for ConstantPropagationTable"],["impl Default for TypeTable"]],
+"leo_lang":[["impl Default for Format<Full, SystemTime>"],["impl Default for BuildOptions"]],
+"leo_package":[["impl Default for Gitignore"],["impl<N: Default + Network> Default for Env<N>"]],
+"leo_passes":[["impl Default for Assigner"],["impl Default for TypeTable"],["impl Default for AssignerInner"],["impl Default for ConstantPropagationTable"],["impl Default for SymbolTable"],["impl Default for RenameTable"]],
"leo_span":[["impl Default for BytePos"],["impl Default for Span"],["impl Default for SourceMapInner"],["impl Default for SessionGlobals"],["impl Default for SourceMap"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/fmt/trait.Debug.js b/trait.impl/core/fmt/trait.Debug.js
index 55f8a5dcbd..d5c17ea8a1 100644
--- a/trait.impl/core/fmt/trait.Debug.js
+++ b/trait.impl/core/fmt/trait.Debug.js
@@ -2,9 +2,9 @@
"leo_abnf":[["impl<'a> Debug for Processor<'a>"],["impl Debug for Scope"]],
"leo_ast":[["impl Debug for ErrExpression"],["impl Debug for Statement"],["impl Debug for ExpressionStatement"],["impl Debug for Literal"],["impl Debug for IntegerType"],["impl Debug for InputData"],["impl Debug for TupleAccess"],["impl Debug for UnaryExpression"],["impl Debug for ConditionalStatement"],["impl Debug for IterationStatement"],["impl Debug for NonNegativeNumber"],["impl Debug for DefinitionStatement"],["impl Debug for Mode"],["impl Debug for AssociatedConstant"],["impl Debug for Ast"],["impl Debug for FunctionOutput"],["impl Debug for GroupCoordinate"],["impl Debug for StaticString"],["impl Debug for Value"],["impl Debug for Type"],["impl Debug for StructExpression"],["impl Debug for FunctionInput"],["impl Debug for Block"],["impl Debug for GroupLiteral"],["impl Debug for AssertVariant"],["impl Debug for Definition"],["impl Debug for InputValue"],["impl Debug for ProgramScope"],["impl Debug for CallExpression"],["impl Debug for Expression"],["impl Debug for GroupTuple"],["impl Debug for External"],["impl Debug for TernaryExpression"],["impl Debug for BinaryOperation"],["impl Debug for UnitExpression"],["impl Debug for CastExpression"],["impl Debug for AssociatedFunction"],["impl Debug for DeclarationType"],["impl Debug for Input"],["impl Debug for UnaryOperation"],["impl Debug for Struct"],["impl Debug for Member"],["impl Debug for Output"],["impl Debug for ConsoleStatement"],["impl Debug for Finalize"],["impl Debug for Program"],["impl Debug for AccessExpression"],["impl Debug for ArrayType"],["impl Debug for Section"],["impl Debug for ConsoleFunction"],["impl Debug for BinaryExpression"],["impl Debug for ReturnStatement"],["impl Debug for TupleExpression"],["impl Debug for Variant"],["impl Debug for AssignStatement"],["impl Debug for Annotation"],["impl Debug for ArrayExpression"],["impl Debug for InputAst"],["impl Debug for NodeBuilder"],["impl Debug for Mapping"],["impl Debug for MappingType"],["impl Debug for ProgramInput"],["impl Debug for AssertStatement"],["impl Debug for Function"],["impl Debug for Identifier"],["impl Debug for StructVariableInitializer"],["impl Debug for MemberAccess"],["impl Debug for ProgramId"],["impl Debug for ArrayAccess"],["impl Debug for ConstDeclaration"],["impl Debug for TupleType"],["impl Debug for NodeBuilderInner"]],
"leo_errors":[["impl Debug for PackageError"],["impl Debug for InputError"],["impl Debug for LeoError"],["impl Debug for FlattenError"],["impl<T: Debug> Debug for Buffer<T>"],["impl Debug for Formatted"],["impl Debug for CompilerError"],["impl Debug for LeoWarning"],["impl Debug for Backtraced"],["impl Debug for ParserError"],["impl Debug for AstError"],["impl Debug for LoopUnrollerError"],["impl Debug for CliError"],["impl Debug for ParserWarning"],["impl Debug for TypeCheckerError"]],
-"leo_lang":[["impl Debug for New"],["impl Debug for Clean"],["impl Debug for Execute"],["impl Debug for BuildOptions"],["impl Debug for CLI"],["impl<F: Debug, T: Debug> Debug for Format<F, T>"],["impl Debug for Commands"],["impl Debug for Build"],["impl Debug for Update"],["impl Debug for Run"],["impl Debug for Example"],["impl Debug for Account"]],
+"leo_lang":[["impl Debug for Commands"],["impl Debug for BuildOptions"],["impl Debug for New"],["impl Debug for Account"],["impl Debug for Clean"],["impl Debug for Build"],["impl Debug for Example"],["impl Debug for CLI"],["impl<F: Debug, T: Debug> Debug for Format<F, T>"],["impl Debug for Execute"],["impl Debug for Run"],["impl Debug for Update"]],
"leo_parser":[["impl Debug for Token"],["impl Debug for SpannedToken"]],
-"leo_passes":[["impl Debug for Assigner"],["impl Debug for TypeTable"],["impl Debug for RenameTable"],["impl<N: Debug + Node> Debug for DiGraph<N>"],["impl Debug for ConstantPropagationTable"],["impl Debug for AssignerInner"],["impl Debug for FunctionSymbol"],["impl Debug for VariableSymbol"],["impl<N: Debug + Node> Debug for DiGraphError<N>"],["impl Debug for SymbolTable"],["impl Debug for VariableType"],["impl Debug for FinalizeData"]],
+"leo_passes":[["impl Debug for VariableType"],["impl Debug for SymbolTable"],["impl Debug for RenameTable"],["impl Debug for TypeTable"],["impl<N: Debug + Node> Debug for DiGraph<N>"],["impl Debug for VariableSymbol"],["impl<N: Debug + Node> Debug for DiGraphError<N>"],["impl Debug for ConstantPropagationTable"],["impl Debug for Assigner"],["impl Debug for FinalizeData"],["impl Debug for AssignerInner"],["impl Debug for FunctionSymbol"]],
"leo_span":[["impl Debug for MultiByteChar"],["impl Debug for Span"],["impl Debug for BytePos"],["impl Debug for Symbol"],["impl Debug for CharPos"]],
-"leo_test_framework":[["impl Debug for TestExpectationMode"],["impl Debug for ParseType"],["impl Debug for TestError"],["impl Debug for TestConfig"]]
+"leo_test_framework":[["impl Debug for ParseType"],["impl Debug for TestExpectationMode"],["impl Debug for TestConfig"],["impl Debug for TestError"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/fmt/trait.Display.js b/trait.impl/core/fmt/trait.Display.js
index 7a9e92b66a..10b3a75140 100644
--- a/trait.impl/core/fmt/trait.Display.js
+++ b/trait.impl/core/fmt/trait.Display.js
@@ -2,8 +2,8 @@
"leo_ast":[["impl Display for CastExpression"],["impl Display for TupleType"],["impl Display for Mapping"],["impl Display for External"],["impl Display for ProgramScope"],["impl Display for Function"],["impl Display for Program"],["impl Display for Mode"],["impl Display for TupleAccess"],["impl Display for Statement"],["impl Display for ConstDeclaration"],["impl Display for BinaryOperation"],["impl Display for Output"],["impl Display for TupleExpression"],["impl Display for BinaryExpression"],["impl Display for DeclarationType"],["impl Display for ConditionalStatement"],["impl Display for Expression"],["impl Display for ArrayAccess"],["impl Display for IterationStatement"],["impl Display for ProgramId"],["impl Display for GroupLiteral"],["impl Display for IntegerType"],["impl Display for ConsoleFunction"],["impl Display for Literal"],["impl Display for GroupCoordinate"],["impl Display for Input"],["impl Display for AccessExpression"],["impl Display for MemberAccess"],["impl Display for InputValue"],["impl Display for Type"],["impl Display for ArrayExpression"],["impl Display for ErrExpression"],["impl Display for NonNegativeNumber"],["impl Display for AssertStatement"],["impl Display for DefinitionStatement"],["impl Display for StructExpression"],["impl Display for Block"],["impl Display for UnitExpression"],["impl Display for Value"],["impl Display for ExpressionStatement"],["impl Display for Identifier"],["impl Display for Finalize"],["impl Display for MappingType"],["impl Display for ArrayType"],["impl Display for StructVariableInitializer"],["impl Display for FunctionOutput"],["impl Display for UnaryExpression"],["impl Display for StaticString"],["impl Display for Struct"],["impl Display for Member"],["impl Display for Annotation"],["impl Display for AssociatedConstant"],["impl Display for ConsoleStatement"],["impl Display for AssignStatement"],["impl Display for AssociatedFunction"],["impl Display for TernaryExpression"],["impl Display for ReturnStatement"],["impl Display for FunctionInput"],["impl Display for CallExpression"]],
"leo_errors":[["impl Display for LoopUnrollerError"],["impl Display for LeoError"],["impl Display for CliError"],["impl Display for FlattenError"],["impl Display for InputError"],["impl<T: Display> Display for Buffer<T>"],["impl Display for Backtraced"],["impl Display for ParserError"],["impl Display for TypeCheckerError"],["impl Display for CompilerError"],["impl Display for LeoWarning"],["impl Display for ParserWarning"],["impl Display for PackageError"],["impl Display for Formatted"],["impl Display for AstError"]],
"leo_package":[["impl Display for Snapshot"]],
-"leo_parser":[["impl Display for Token"],["impl Display for SpannedToken"]],
-"leo_passes":[["impl Display for VariableType"],["impl Display for VariableSymbol"]],
+"leo_parser":[["impl Display for SpannedToken"],["impl Display for Token"]],
+"leo_passes":[["impl Display for VariableSymbol"],["impl Display for VariableType"]],
"leo_span":[["impl Display for Span"],["impl Display for Symbol"],["impl Display for FileName"]],
"leo_test_framework":[["impl Display for TestError"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/marker/trait.StructuralEq.js b/trait.impl/core/marker/trait.StructuralEq.js
index 05860aeba7..3e1a2f23ca 100644
--- a/trait.impl/core/marker/trait.StructuralEq.js
+++ b/trait.impl/core/marker/trait.StructuralEq.js
@@ -1,7 +1,7 @@
(function() {var implementors = {
"leo_ast":[["impl StructuralEq for TupleAccess"],["impl StructuralEq for GroupCoordinate"],["impl StructuralEq for NonNegativeNumber"],["impl StructuralEq for ConstDeclaration"],["impl StructuralEq for AssignStatement"],["impl StructuralEq for StructVariableInitializer"],["impl StructuralEq for Ast"],["impl StructuralEq for Input"],["impl StructuralEq for FunctionOutput"],["impl StructuralEq for Member"],["impl StructuralEq for FunctionInput"],["impl StructuralEq for Type"],["impl StructuralEq for ErrExpression"],["impl StructuralEq for Annotation"],["impl StructuralEq for UnitExpression"],["impl StructuralEq for Literal"],["impl StructuralEq for Finalize"],["impl StructuralEq for ArrayAccess"],["impl StructuralEq for GroupTuple"],["impl StructuralEq for Output"],["impl StructuralEq for StaticString"],["impl StructuralEq for Mapping"],["impl StructuralEq for InputValue"],["impl StructuralEq for DeclarationType"],["impl StructuralEq for Block"],["impl StructuralEq for AssociatedFunction"],["impl StructuralEq for IntegerType"],["impl StructuralEq for CastExpression"],["impl StructuralEq for UnaryOperation"],["impl StructuralEq for Statement"],["impl StructuralEq for AssertStatement"],["impl StructuralEq for External"],["impl StructuralEq for Variant"],["impl StructuralEq for DefinitionStatement"],["impl StructuralEq for Program"],["impl StructuralEq for AssertVariant"],["impl StructuralEq for StructExpression"],["impl StructuralEq for BinaryExpression"],["impl StructuralEq for Expression"],["impl StructuralEq for ExpressionStatement"],["impl StructuralEq for TupleExpression"],["impl StructuralEq for GroupLiteral"],["impl StructuralEq for MemberAccess"],["impl StructuralEq for MappingType"],["impl StructuralEq for ProgramScope"],["impl StructuralEq for CallExpression"],["impl StructuralEq for Definition"],["impl StructuralEq for BinaryOperation"],["impl StructuralEq for Value"],["impl StructuralEq for UnaryExpression"],["impl StructuralEq for IterationStatement"],["impl StructuralEq for ArrayType"],["impl StructuralEq for ConsoleStatement"],["impl StructuralEq for TernaryExpression"],["impl StructuralEq for CoreFunction"],["impl StructuralEq for Mode"],["impl StructuralEq for ConditionalStatement"],["impl StructuralEq for ArrayExpression"],["impl StructuralEq for AccessExpression"],["impl StructuralEq for TupleType"],["impl StructuralEq for ProgramId"],["impl StructuralEq for ReturnStatement"],["impl StructuralEq for CoreConstant"],["impl StructuralEq for ConsoleFunction"],["impl StructuralEq for AssociatedConstant"]],
"leo_parser":[["impl StructuralEq for Token"]],
-"leo_passes":[["impl StructuralEq for VariableType"],["impl StructuralEq for VariableSymbol"],["impl StructuralEq for RenameTable"]],
+"leo_passes":[["impl StructuralEq for RenameTable"],["impl StructuralEq for VariableType"],["impl StructuralEq for VariableSymbol"]],
"leo_span":[["impl StructuralEq for BytePos"],["impl StructuralEq for CharPos"],["impl StructuralEq for MultiByteChar"],["impl StructuralEq for InternedStr"],["impl StructuralEq for Span"],["impl StructuralEq for Symbol"]],
"leo_test_framework":[["impl StructuralEq for ParseType"],["impl StructuralEq for TestExpectationMode"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/core/marker/trait.StructuralPartialEq.js b/trait.impl/core/marker/trait.StructuralPartialEq.js
index 2c0611dd13..7f63ba7582 100644
--- a/trait.impl/core/marker/trait.StructuralPartialEq.js
+++ b/trait.impl/core/marker/trait.StructuralPartialEq.js
@@ -2,7 +2,7 @@
"leo_ast":[["impl StructuralPartialEq for UnaryExpression"],["impl StructuralPartialEq for Definition"],["impl StructuralPartialEq for AssociatedConstant"],["impl StructuralPartialEq for ReturnStatement"],["impl StructuralPartialEq for CoreConstant"],["impl StructuralPartialEq for FunctionOutput"],["impl StructuralPartialEq for MemberAccess"],["impl StructuralPartialEq for TupleExpression"],["impl StructuralPartialEq for BinaryExpression"],["impl StructuralPartialEq for Ast"],["impl StructuralPartialEq for Program"],["impl StructuralPartialEq for StaticString"],["impl StructuralPartialEq for Mode"],["impl StructuralPartialEq for ProgramScope"],["impl StructuralPartialEq for FunctionInput"],["impl StructuralPartialEq for ArrayExpression"],["impl StructuralPartialEq for BinaryOperation"],["impl StructuralPartialEq for Statement"],["impl StructuralPartialEq for TupleType"],["impl StructuralPartialEq for CastExpression"],["impl StructuralPartialEq for Value"],["impl StructuralPartialEq for ErrExpression"],["impl StructuralPartialEq for AssertStatement"],["impl StructuralPartialEq for MappingType"],["impl StructuralPartialEq for ArrayType"],["impl StructuralPartialEq for GroupLiteral"],["impl StructuralPartialEq for TupleAccess"],["impl StructuralPartialEq for Output"],["impl StructuralPartialEq for ConsoleFunction"],["impl StructuralPartialEq for External"],["impl StructuralPartialEq for ConditionalStatement"],["impl StructuralPartialEq for Finalize"],["impl StructuralPartialEq for ExpressionStatement"],["impl StructuralPartialEq for ConsoleStatement"],["impl StructuralPartialEq for AccessExpression"],["impl StructuralPartialEq for NonNegativeNumber"],["impl StructuralPartialEq for UnaryOperation"],["impl StructuralPartialEq for ArrayAccess"],["impl StructuralPartialEq for Annotation"],["impl StructuralPartialEq for TernaryExpression"],["impl StructuralPartialEq for ConstDeclaration"],["impl StructuralPartialEq for GroupCoordinate"],["impl StructuralPartialEq for AssignStatement"],["impl StructuralPartialEq for GroupTuple"],["impl StructuralPartialEq for Block"],["impl StructuralPartialEq for Mapping"],["impl StructuralPartialEq for DeclarationType"],["impl StructuralPartialEq for IntegerType"],["impl StructuralPartialEq for Expression"],["impl StructuralPartialEq for Input"],["impl StructuralPartialEq for Variant"],["impl StructuralPartialEq for ProgramId"],["impl StructuralPartialEq for Member"],["impl StructuralPartialEq for CoreFunction"],["impl StructuralPartialEq for StructExpression"],["impl StructuralPartialEq for AssociatedFunction"],["impl StructuralPartialEq for AssertVariant"],["impl StructuralPartialEq for CallExpression"],["impl StructuralPartialEq for Literal"],["impl StructuralPartialEq for StructVariableInitializer"],["impl StructuralPartialEq for Type"],["impl StructuralPartialEq for IterationStatement"],["impl StructuralPartialEq for UnitExpression"],["impl StructuralPartialEq for InputValue"],["impl StructuralPartialEq for DefinitionStatement"]],
"leo_errors":[["impl StructuralPartialEq for Formatted"]],
"leo_parser":[["impl StructuralPartialEq for Token"]],
-"leo_passes":[["impl StructuralPartialEq for VariableSymbol"],["impl StructuralPartialEq for RenameTable"],["impl StructuralPartialEq for VariableType"]],
+"leo_passes":[["impl StructuralPartialEq for RenameTable"],["impl StructuralPartialEq for VariableType"],["impl StructuralPartialEq for VariableSymbol"]],
"leo_span":[["impl StructuralPartialEq for Span"],["impl StructuralPartialEq for Symbol"],["impl StructuralPartialEq for CharPos"],["impl StructuralPartialEq for BytePos"],["impl StructuralPartialEq for MultiByteChar"]],
-"leo_test_framework":[["impl StructuralPartialEq for TestExpectationMode"],["impl StructuralPartialEq for ParseType"]]
+"leo_test_framework":[["impl StructuralPartialEq for ParseType"],["impl StructuralPartialEq for TestExpectationMode"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/leo_ast/passes/reconstructor/trait.ExpressionReconstructor.js b/trait.impl/leo_ast/passes/reconstructor/trait.ExpressionReconstructor.js
index 25b796a5ef..a5d5984d08 100644
--- a/trait.impl/leo_ast/passes/reconstructor/trait.ExpressionReconstructor.js
+++ b/trait.impl/leo_ast/passes/reconstructor/trait.ExpressionReconstructor.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_passes":[["impl<F> ExpressionReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl ExpressionReconstructor for Flattener<'_>"],["impl ExpressionReconstructor for DeadCodeEliminator<'_>"],["impl ExpressionReconstructor for FunctionInliner<'_>"],["impl ExpressionReconstructor for Unroller<'_>"],["impl ExpressionReconstructor for Destructurer<'_>"],["impl ExpressionReconstructor for AssignmentRenamer<'_>"]]
+"leo_passes":[["impl ExpressionReconstructor for Destructurer<'_>"],["impl ExpressionReconstructor for Unroller<'_>"],["impl ExpressionReconstructor for DeadCodeEliminator<'_>"],["impl<F> ExpressionReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl ExpressionReconstructor for Flattener<'_>"],["impl ExpressionReconstructor for FunctionInliner<'_>"],["impl ExpressionReconstructor for AssignmentRenamer<'_>"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/leo_ast/passes/reconstructor/trait.ProgramReconstructor.js b/trait.impl/leo_ast/passes/reconstructor/trait.ProgramReconstructor.js
index b358124898..ecb6ba8e1e 100644
--- a/trait.impl/leo_ast/passes/reconstructor/trait.ProgramReconstructor.js
+++ b/trait.impl/leo_ast/passes/reconstructor/trait.ProgramReconstructor.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_passes":[["impl<F> ProgramReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl ProgramReconstructor for Unroller<'_>"],["impl ProgramReconstructor for AssignmentRenamer<'_>"],["impl ProgramReconstructor for Destructurer<'_>"],["impl ProgramReconstructor for FunctionInliner<'_>"],["impl ProgramReconstructor for DeadCodeEliminator<'_>"],["impl ProgramReconstructor for Flattener<'_>"]]
+"leo_passes":[["impl<F> ProgramReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl ProgramReconstructor for Destructurer<'_>"],["impl ProgramReconstructor for FunctionInliner<'_>"],["impl ProgramReconstructor for Unroller<'_>"],["impl ProgramReconstructor for AssignmentRenamer<'_>"],["impl ProgramReconstructor for DeadCodeEliminator<'_>"],["impl ProgramReconstructor for Flattener<'_>"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/leo_ast/passes/reconstructor/trait.StatementReconstructor.js b/trait.impl/leo_ast/passes/reconstructor/trait.StatementReconstructor.js
index 49954ff523..b6fe393c4c 100644
--- a/trait.impl/leo_ast/passes/reconstructor/trait.StatementReconstructor.js
+++ b/trait.impl/leo_ast/passes/reconstructor/trait.StatementReconstructor.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_passes":[["impl<F> StatementReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl StatementReconstructor for AssignmentRenamer<'_>"],["impl StatementReconstructor for FunctionInliner<'_>"],["impl StatementReconstructor for Flattener<'_>"],["impl StatementReconstructor for DeadCodeEliminator<'_>"],["impl StatementReconstructor for Destructurer<'_>"],["impl StatementReconstructor for Unroller<'_>"]]
+"leo_passes":[["impl StatementReconstructor for Destructurer<'_>"],["impl StatementReconstructor for DeadCodeEliminator<'_>"],["impl StatementReconstructor for Flattener<'_>"],["impl StatementReconstructor for Unroller<'_>"],["impl StatementReconstructor for FunctionInliner<'_>"],["impl<F> StatementReconstructor for Replacer<F>where\n F: Fn(&Identifier) -> Expression,"],["impl StatementReconstructor for AssignmentRenamer<'_>"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/leo_ast/passes/visitor/trait.StatementVisitor.js b/trait.impl/leo_ast/passes/visitor/trait.StatementVisitor.js
index b9c6eedf7a..b5f97451ca 100644
--- a/trait.impl/leo_ast/passes/visitor/trait.StatementVisitor.js
+++ b/trait.impl/leo_ast/passes/visitor/trait.StatementVisitor.js
@@ -1,3 +1,3 @@
(function() {var implementors = {
-"leo_passes":[["impl<'a> StatementVisitor<'a> for SymbolTableCreator<'a>"],["impl<'a> StatementVisitor<'a> for TypeChecker<'a>"]]
+"leo_passes":[["impl<'a> StatementVisitor<'a> for TypeChecker<'a>"],["impl<'a> StatementVisitor<'a> for SymbolTableCreator<'a>"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/serde/de/trait.Deserialize.js b/trait.impl/serde/de/trait.Deserialize.js
index bdc7533417..a6e2e1d22d 100644
--- a/trait.impl/serde/de/trait.Deserialize.js
+++ b/trait.impl/serde/de/trait.Deserialize.js
@@ -1,8 +1,8 @@
(function() {var implementors = {
"leo_ast":[["impl<'de> Deserialize<'de> for IterationStatement"],["impl<'de> Deserialize<'de> for Annotation"],["impl<'de> Deserialize<'de> for ProgramInput"],["impl<'de> Deserialize<'de> for ReturnStatement"],["impl<'de> Deserialize<'de> for Identifier"],["impl<'de> Deserialize<'de> for AssertStatement"],["impl<'de> Deserialize<'de> for TernaryExpression"],["impl<'de> Deserialize<'de> for ConstDeclaration"],["impl<'de> Deserialize<'de> for Expression"],["impl<'de> Deserialize<'de> for Mode"],["impl<'de> Deserialize<'de> for AssignStatement"],["impl<'de> Deserialize<'de> for GroupTuple"],["impl<'de> Deserialize<'de> for StaticString"],["impl<'de> Deserialize<'de> for FunctionOutput"],["impl<'de> Deserialize<'de> for ArrayExpression"],["impl<'de> Deserialize<'de> for Struct"],["impl<'de> Deserialize<'de> for Literal"],["impl<'de> Deserialize<'de> for DeclarationType"],["impl<'de> Deserialize<'de> for TupleAccess"],["impl<'de> Deserialize<'de> for CastExpression"],["impl<'de> Deserialize<'de> for Statement"],["impl<'de> Deserialize<'de> for MemberAccess"],["impl<'de> Deserialize<'de> for ConditionalStatement"],["impl<'de> Deserialize<'de> for AccessExpression"],["impl<'de> Deserialize<'de> for Type"],["impl<'de> Deserialize<'de> for TupleExpression"],["impl<'de> Deserialize<'de> for ProgramId"],["impl<'de> Deserialize<'de> for UnaryOperation"],["impl<'de> Deserialize<'de> for External"],["impl<'de> Deserialize<'de> for ArrayType"],["impl<'de> Deserialize<'de> for BinaryExpression"],["impl<'de> Deserialize<'de> for Definition"],["impl<'de> Deserialize<'de> for BinaryOperation"],["impl<'de> Deserialize<'de> for InputAst"],["impl<'de> Deserialize<'de> for MappingType"],["impl<'de> Deserialize<'de> for GroupLiteral"],["impl<'de> Deserialize<'de> for Input"],["impl<'de> Deserialize<'de> for UnitExpression"],["impl<'de> Deserialize<'de> for UnaryExpression"],["impl<'de> Deserialize<'de> for InputValue"],["impl<'de> Deserialize<'de> for Output"],["impl<'de> Deserialize<'de> for Variant"],["impl<'de> Deserialize<'de> for InputData"],["impl<'de> Deserialize<'de> for ConsoleStatement"],["impl<'de> Deserialize<'de> for StructExpression"],["impl<'de> Deserialize<'de> for ArrayAccess"],["impl<'de> Deserialize<'de> for AssertVariant"],["impl<'de> Deserialize<'de> for Section"],["impl<'de> Deserialize<'de> for AssociatedConstant"],["impl<'de> Deserialize<'de> for Mapping"],["impl<'de> Deserialize<'de> for IntegerType"],["impl<'de> Deserialize<'de> for ErrExpression"],["impl<'de> Deserialize<'de> for CallExpression"],["impl<'de> Deserialize<'de> for Member"],["impl<'de> Deserialize<'de> for DefinitionStatement"],["impl<'de> Deserialize<'de> for Function"],["impl<'de> Deserialize<'de> for Finalize"],["impl<'de> Deserialize<'de> for ConsoleFunction"],["impl<'de> Deserialize<'de> for Program"],["impl<'de> Deserialize<'de> for AssociatedFunction"],["impl<'de> Deserialize<'de> for TupleType"],["impl<'de> Deserialize<'de> for ExpressionStatement"],["impl<'de> Deserialize<'de> for GroupCoordinate"],["impl<'de> Deserialize<'de> for StructVariableInitializer"],["impl<'de> Deserialize<'de> for NonNegativeNumber"],["impl<'de> Deserialize<'de> for Block"],["impl<'de> Deserialize<'de> for ProgramScope"],["impl<'de> Deserialize<'de> for FunctionInput"]],
-"leo_package":[["impl<'de> Deserialize<'de> for InputFile"],["impl<'de> Deserialize<'de> for CircuitFile"],["impl<'de> Deserialize<'de> for Gitignore"],["impl<'de> Deserialize<'de> for SnapshotFile"],["impl<'de, N: Network> Deserialize<'de> for Env<N>"],["impl<'de, N: Network> Deserialize<'de> for Package<N>"],["impl<'de> Deserialize<'de> for ChecksumFile"],["impl<'de> Deserialize<'de> for MainFile"],["impl<'de> Deserialize<'de> for Snapshot"]],
+"leo_package":[["impl<'de> Deserialize<'de> for Gitignore"],["impl<'de> Deserialize<'de> for ChecksumFile"],["impl<'de> Deserialize<'de> for Snapshot"],["impl<'de> Deserialize<'de> for CircuitFile"],["impl<'de, N: Network> Deserialize<'de> for Env<N>"],["impl<'de> Deserialize<'de> for MainFile"],["impl<'de> Deserialize<'de> for SnapshotFile"],["impl<'de, N: Network> Deserialize<'de> for Package<N>"],["impl<'de> Deserialize<'de> for InputFile"]],
"leo_parser":[["impl<'de> Deserialize<'de> for Token"],["impl<'de> Deserialize<'de> for SpannedToken"]],
-"leo_passes":[["impl<'de> Deserialize<'de> for ConstantPropagationTable"],["impl<'de> Deserialize<'de> for VariableType"],["impl<'de> Deserialize<'de> for FunctionSymbol"],["impl<'de> Deserialize<'de> for FinalizeData"],["impl<'de> Deserialize<'de> for SymbolTable"],["impl<'de> Deserialize<'de> for VariableSymbol"]],
+"leo_passes":[["impl<'de> Deserialize<'de> for FunctionSymbol"],["impl<'de> Deserialize<'de> for VariableSymbol"],["impl<'de> Deserialize<'de> for VariableType"],["impl<'de> Deserialize<'de> for SymbolTable"],["impl<'de> Deserialize<'de> for ConstantPropagationTable"],["impl<'de> Deserialize<'de> for FinalizeData"]],
"leo_span":[["impl<'de> Deserialize<'de> for Span"],["impl<'de> Deserialize<'de> for BytePos"],["impl<'de> Deserialize<'de> for Symbol"]],
-"leo_test_framework":[["impl<'de> Deserialize<'de> for TestExpectationMode"],["impl<'de> Deserialize<'de> for TestConfig"],["impl<'de> Deserialize<'de> for TestExpectation"]]
+"leo_test_framework":[["impl<'de> Deserialize<'de> for TestExpectation"],["impl<'de> Deserialize<'de> for TestConfig"],["impl<'de> Deserialize<'de> for TestExpectationMode"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/trait.impl/serde/ser/trait.Serialize.js b/trait.impl/serde/ser/trait.Serialize.js
index c48134abf3..33c163b249 100644
--- a/trait.impl/serde/ser/trait.Serialize.js
+++ b/trait.impl/serde/ser/trait.Serialize.js
@@ -1,7 +1,7 @@
(function() {var implementors = {
"leo_ast":[["impl Serialize for ProgramScope"],["impl Serialize for TupleExpression"],["impl Serialize for AssignStatement"],["impl Serialize for Type"],["impl Serialize for BinaryOperation"],["impl Serialize for CastExpression"],["impl Serialize for Input"],["impl Serialize for InputData"],["impl Serialize for MappingType"],["impl Serialize for InputAst"],["impl Serialize for Literal"],["impl Serialize for FunctionInput"],["impl Serialize for FunctionOutput"],["impl Serialize for StaticString"],["impl Serialize for DeclarationType"],["impl Serialize for Section"],["impl Serialize for InputValue"],["impl Serialize for StructVariableInitializer"],["impl Serialize for Function"],["impl Serialize for UnitExpression"],["impl Serialize for Block"],["impl Serialize for TernaryExpression"],["impl Serialize for TupleAccess"],["impl Serialize for Identifier"],["impl Serialize for External"],["impl Serialize for Annotation"],["impl Serialize for StructExpression"],["impl Serialize for Mapping"],["impl Serialize for TupleType"],["impl Serialize for GroupLiteral"],["impl Serialize for CallExpression"],["impl Serialize for ExpressionStatement"],["impl Serialize for Variant"],["impl Serialize for ConsoleStatement"],["impl Serialize for ConstDeclaration"],["impl Serialize for AccessExpression"],["impl Serialize for ArrayAccess"],["impl Serialize for IterationStatement"],["impl Serialize for Member"],["impl Serialize for GroupCoordinate"],["impl Serialize for DefinitionStatement"],["impl Serialize for Statement"],["impl Serialize for MemberAccess"],["impl Serialize for Output"],["impl Serialize for AssociatedConstant"],["impl Serialize for AssociatedFunction"],["impl Serialize for ProgramId"],["impl Serialize for AssertStatement"],["impl Serialize for UnaryExpression"],["impl Serialize for ReturnStatement"],["impl Serialize for Finalize"],["impl Serialize for IntegerType"],["impl Serialize for ArrayType"],["impl Serialize for Mode"],["impl Serialize for ErrExpression"],["impl Serialize for NonNegativeNumber"],["impl Serialize for GroupTuple"],["impl Serialize for Program"],["impl Serialize for ArrayExpression"],["impl Serialize for AssertVariant"],["impl Serialize for ProgramInput"],["impl Serialize for UnaryOperation"],["impl Serialize for ConditionalStatement"],["impl Serialize for BinaryExpression"],["impl Serialize for ConsoleFunction"],["impl Serialize for Definition"],["impl Serialize for Expression"],["impl Serialize for Struct"]],
-"leo_parser":[["impl Serialize for SpannedToken"],["impl Serialize for Token"]],
-"leo_passes":[["impl Serialize for FunctionSymbol"],["impl Serialize for ConstantPropagationTable"],["impl Serialize for VariableSymbol"],["impl Serialize for SymbolTable"],["impl Serialize for VariableType"],["impl Serialize for FinalizeData"]],
+"leo_parser":[["impl Serialize for Token"],["impl Serialize for SpannedToken"]],
+"leo_passes":[["impl Serialize for ConstantPropagationTable"],["impl Serialize for VariableType"],["impl Serialize for FunctionSymbol"],["impl Serialize for SymbolTable"],["impl Serialize for VariableSymbol"],["impl Serialize for FinalizeData"]],
"leo_span":[["impl Serialize for Symbol"],["impl Serialize for Span"],["impl Serialize for BytePos"]],
-"leo_test_framework":[["impl Serialize for TestConfig"],["impl Serialize for TestExpectation"],["impl Serialize for TestExpectationMode"]]
+"leo_test_framework":[["impl Serialize for TestExpectation"],["impl Serialize for TestExpectationMode"],["impl Serialize for TestConfig"]]
};if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file