├── .gitignore ├── AUTHORS ├── CONTRIBUTORS ├── LICENSE ├── Makefile ├── README.md ├── assets └── ideal-style.css ├── bin ├── antlr ├── check-dependencies.sh ├── count.sh ├── doc-regression.sh ├── doc-reset-regression.sh ├── env.sh ├── g ├── grun ├── idoc.sh ├── irun.sh ├── j2i.sh ├── makevisitor.sh ├── mini-replace.sh ├── process-base-symbols-map.sh ├── regression.sh ├── remove-trailing-sp.sh ├── replace.sh ├── reset-regression.sh ├── run-briefing.sh └── setup-thirdparty.sh ├── bootstrapped └── ideal │ ├── development │ ├── comments │ │ ├── any_documentation.java │ │ ├── comment.java │ │ ├── comment_type.java │ │ ├── deeply_immutable_documentation.java │ │ ├── documentation.java │ │ ├── documentation_section.java │ │ ├── immutable_documentation.java │ │ ├── readonly_documentation.java │ │ ├── summary_extractor.java │ │ └── writeonly_documentation.java │ ├── components │ │ ├── any_printer.java │ │ ├── any_transformer.java │ │ ├── deeply_immutable_printer.java │ │ ├── deeply_immutable_transformer.java │ │ ├── immutable_printer.java │ │ ├── immutable_transformer.java │ │ ├── printer.java │ │ ├── readonly_printer.java │ │ ├── readonly_transformer.java │ │ ├── transformer.java │ │ ├── writeonly_printer.java │ │ └── writeonly_transformer.java │ ├── constructs │ │ ├── annotation_construct.java │ │ ├── any_annotation_construct.java │ │ ├── base_construct.java │ │ ├── block_construct.java │ │ ├── case_clause_construct.java │ │ ├── comment_construct.java │ │ ├── conditional_construct.java │ │ ├── constraint_category.java │ │ ├── constraint_construct.java │ │ ├── construct_visitor.java │ │ ├── deeply_immutable_annotation_construct.java │ │ ├── empty_construct.java │ │ ├── enum_util.java │ │ ├── extension_construct.java │ │ ├── flavor_construct.java │ │ ├── grammar_construct.java │ │ ├── grouping_type.java │ │ ├── immutable_annotation_construct.java │ │ ├── import_construct.java │ │ ├── jump_construct.java │ │ ├── list_construct.java │ │ ├── literal_construct.java │ │ ├── loop_construct.java │ │ ├── modifier_construct.java │ │ ├── name_construct.java │ │ ├── operator_construct.java │ │ ├── parameter_construct.java │ │ ├── procedure_construct.java │ │ ├── readonly_annotation_construct.java │ │ ├── resolve_construct.java │ │ ├── return_construct.java │ │ ├── supertype_construct.java │ │ ├── switch_construct.java │ │ ├── type_announcement_construct.java │ │ ├── type_declaration_construct.java │ │ ├── variable_construct.java │ │ └── writeonly_annotation_construct.java │ ├── declarations │ │ ├── annotation_library.java │ │ ├── annotation_set.java │ │ ├── any_annotation_set.java │ │ ├── any_block_declaration.java │ │ ├── any_import_declaration.java │ │ ├── any_named_declaration.java │ │ ├── any_procedure_declaration.java │ │ ├── any_supertype_declaration.java │ │ ├── any_type_announcement.java │ │ ├── any_type_declaration.java │ │ ├── any_type_parameter_declaration.java │ │ ├── any_variable_declaration.java │ │ ├── base_annotation_set.java │ │ ├── block_declaration.java │ │ ├── declaration_pass.java │ │ ├── declaration_util.java │ │ ├── deeply_immutable_annotation_set.java │ │ ├── deeply_immutable_block_declaration.java │ │ ├── deeply_immutable_import_declaration.java │ │ ├── deeply_immutable_named_declaration.java │ │ ├── deeply_immutable_procedure_declaration.java │ │ ├── deeply_immutable_supertype_declaration.java │ │ ├── deeply_immutable_type_announcement.java │ │ ├── deeply_immutable_type_declaration.java │ │ ├── deeply_immutable_type_parameter_declaration.java │ │ ├── deeply_immutable_variable_declaration.java │ │ ├── immutable_annotation_set.java │ │ ├── immutable_block_declaration.java │ │ ├── immutable_import_declaration.java │ │ ├── immutable_named_declaration.java │ │ ├── immutable_procedure_declaration.java │ │ ├── immutable_supertype_declaration.java │ │ ├── immutable_type_announcement.java │ │ ├── immutable_type_declaration.java │ │ ├── immutable_type_parameter_declaration.java │ │ ├── immutable_variable_declaration.java │ │ ├── import_declaration.java │ │ ├── named_declaration.java │ │ ├── procedure_category.java │ │ ├── procedure_declaration.java │ │ ├── readonly_annotation_set.java │ │ ├── readonly_block_declaration.java │ │ ├── readonly_import_declaration.java │ │ ├── readonly_named_declaration.java │ │ ├── readonly_procedure_declaration.java │ │ ├── readonly_supertype_declaration.java │ │ ├── readonly_type_announcement.java │ │ ├── readonly_type_declaration.java │ │ ├── readonly_type_parameter_declaration.java │ │ ├── readonly_variable_declaration.java │ │ ├── supertype_declaration.java │ │ ├── type_announcement.java │ │ ├── type_declaration.java │ │ ├── type_parameter_declaration.java │ │ ├── variable_category.java │ │ ├── variable_declaration.java │ │ ├── writeonly_annotation_set.java │ │ ├── writeonly_block_declaration.java │ │ ├── writeonly_import_declaration.java │ │ ├── writeonly_named_declaration.java │ │ ├── writeonly_procedure_declaration.java │ │ ├── writeonly_supertype_declaration.java │ │ ├── writeonly_type_announcement.java │ │ ├── writeonly_type_declaration.java │ │ ├── writeonly_type_parameter_declaration.java │ │ └── writeonly_variable_declaration.java │ ├── documenters │ │ ├── doc_comment_processor.java │ │ ├── doc_elements.java │ │ ├── doc_grammar.java │ │ ├── doc_parser.java │ │ └── test_doc_grammar.java │ ├── elements │ │ ├── abstract_value.java │ │ ├── access_modifier.java │ │ ├── action.java │ │ ├── action_context.java │ │ ├── action_name.java │ │ ├── action_parameters.java │ │ ├── analysis_result.java │ │ ├── analyzable.java │ │ ├── any_abstract_value.java │ │ ├── any_action.java │ │ ├── any_action_context.java │ │ ├── any_analysis_result.java │ │ ├── any_analyzable.java │ │ ├── any_construct.java │ │ ├── any_declaration.java │ │ ├── any_execution_context.java │ │ ├── any_flavor_profile.java │ │ ├── any_language_settings.java │ │ ├── any_origin.java │ │ ├── any_principal_type.java │ │ ├── any_type.java │ │ ├── construct.java │ │ ├── declaration.java │ │ ├── deeply_immutable_abstract_value.java │ │ ├── deeply_immutable_action.java │ │ ├── deeply_immutable_action_context.java │ │ ├── deeply_immutable_analysis_result.java │ │ ├── deeply_immutable_analyzable.java │ │ ├── deeply_immutable_construct.java │ │ ├── deeply_immutable_declaration.java │ │ ├── deeply_immutable_execution_context.java │ │ ├── deeply_immutable_flavor_profile.java │ │ ├── deeply_immutable_language_settings.java │ │ ├── deeply_immutable_origin.java │ │ ├── deeply_immutable_principal_type.java │ │ ├── deeply_immutable_type.java │ │ ├── execution_context.java │ │ ├── flavor_profile.java │ │ ├── immutable_abstract_value.java │ │ ├── immutable_action.java │ │ ├── immutable_action_context.java │ │ ├── immutable_analysis_result.java │ │ ├── immutable_analyzable.java │ │ ├── immutable_construct.java │ │ ├── immutable_declaration.java │ │ ├── immutable_execution_context.java │ │ ├── immutable_flavor_profile.java │ │ ├── immutable_language_settings.java │ │ ├── immutable_origin.java │ │ ├── immutable_principal_type.java │ │ ├── immutable_type.java │ │ ├── kind.java │ │ ├── language_settings.java │ │ ├── literal.java │ │ ├── modifier_kind.java │ │ ├── notification.java │ │ ├── origin.java │ │ ├── principal_type.java │ │ ├── readonly_abstract_value.java │ │ ├── readonly_action.java │ │ ├── readonly_action_context.java │ │ ├── readonly_analysis_result.java │ │ ├── readonly_analyzable.java │ │ ├── readonly_construct.java │ │ ├── readonly_declaration.java │ │ ├── readonly_execution_context.java │ │ ├── readonly_flavor_profile.java │ │ ├── readonly_language_settings.java │ │ ├── readonly_origin.java │ │ ├── readonly_principal_type.java │ │ ├── readonly_type.java │ │ ├── simple_name.java │ │ ├── specialization_context.java │ │ ├── subtype_tag.java │ │ ├── token.java │ │ ├── token_type.java │ │ ├── type.java │ │ ├── type_flavor.java │ │ ├── writeonly_abstract_value.java │ │ ├── writeonly_action.java │ │ ├── writeonly_action_context.java │ │ ├── writeonly_analysis_result.java │ │ ├── writeonly_analyzable.java │ │ ├── writeonly_construct.java │ │ ├── writeonly_declaration.java │ │ ├── writeonly_execution_context.java │ │ ├── writeonly_flavor_profile.java │ │ ├── writeonly_language_settings.java │ │ ├── writeonly_origin.java │ │ ├── writeonly_principal_type.java │ │ └── writeonly_type.java │ ├── flags │ │ ├── create_flags.java │ │ └── debug.java │ ├── flavors │ │ ├── base_flavor_profile.java │ │ ├── flavor.java │ │ ├── flavor_profiles.java │ │ └── type_flavor_impl.java │ ├── grammars │ │ ├── grammar_scanner.java │ │ ├── nonterminal_construct.java │ │ ├── production_construct.java │ │ ├── rule_construct.java │ │ ├── term_construct.java │ │ ├── term_repeat.java │ │ └── terminal_construct.java │ ├── jumps │ │ ├── jump_category.java │ │ ├── jump_wrapper.java │ │ ├── panic_value.java │ │ └── returned_value.java │ ├── kinds │ │ ├── base_kind.java │ │ ├── base_subtype_tag.java │ │ ├── subtype_tags.java │ │ └── type_kinds.java │ ├── languages │ │ ├── annotation_list_order.java │ │ ├── java_language.java │ │ └── javascript_language.java │ ├── literals │ │ ├── integer_literal.java │ │ ├── literal_fragment.java │ │ ├── quoted_fragment.java │ │ ├── string_fragment.java │ │ └── string_literal.java │ ├── modifiers │ │ ├── base_modifier_kind.java │ │ ├── general_modifier.java │ │ └── variance_modifier.java │ ├── names │ │ ├── base_token_type.java │ │ ├── cast_type.java │ │ ├── common_names.java │ │ ├── keyword.java │ │ ├── keywords.java │ │ ├── name_utilities.java │ │ ├── operator.java │ │ ├── operator_type.java │ │ ├── precedence.java │ │ ├── punctuation.java │ │ ├── punctuation_type.java │ │ ├── quote_type.java │ │ ├── special_name.java │ │ ├── special_token_type.java │ │ └── test_names.java │ ├── notifications │ │ ├── base_notification.java │ │ ├── error_action.java │ │ ├── error_signal.java │ │ ├── messages.java │ │ ├── notification_context.java │ │ ├── notification_level.java │ │ ├── notification_output.java │ │ ├── notification_utilities.java │ │ └── signal.java │ ├── origins │ │ ├── fragment_origin.java │ │ ├── origin_printer.java │ │ ├── origin_utilities.java │ │ ├── source_content.java │ │ ├── special_origin.java │ │ ├── test_origin_printer.java │ │ └── text_origin.java │ ├── scanners │ │ ├── any_scanner_config.java │ │ ├── any_scanner_element.java │ │ ├── base_scanner_config.java │ │ ├── base_scanner_element.java │ │ ├── base_token.java │ │ ├── deeply_immutable_scanner_config.java │ │ ├── deeply_immutable_scanner_element.java │ │ ├── documenter_filter.java │ │ ├── hash_element.java │ │ ├── immutable_scanner_config.java │ │ ├── immutable_scanner_element.java │ │ ├── integer_token_element.java │ │ ├── line_comment.java │ │ ├── punctuation_element.java │ │ ├── quoted_token_element.java │ │ ├── readonly_scanner_config.java │ │ ├── readonly_scanner_element.java │ │ ├── scan_state.java │ │ ├── scanner_config.java │ │ ├── scanner_element.java │ │ ├── scanner_engine.java │ │ ├── string_token_element.java │ │ ├── writeonly_scanner_config.java │ │ └── writeonly_scanner_element.java │ ├── symbols │ │ └── base_symbols_map.java │ ├── tests │ │ └── all_tests.java │ ├── types │ │ ├── any_type_declaration_context.java │ │ ├── any_value_printer.java │ │ ├── base_principal_type.java │ │ ├── base_type.java │ │ ├── base_value_printer.java │ │ ├── common_types.java │ │ ├── concrete_type_action.java │ │ ├── deeply_immutable_type_declaration_context.java │ │ ├── deeply_immutable_value_printer.java │ │ ├── flavored_type.java │ │ ├── immutable_type_declaration_context.java │ │ ├── immutable_value_printer.java │ │ ├── master_type.java │ │ ├── null_wrapper.java │ │ ├── parametrizable_state.java │ │ ├── parametrized_type.java │ │ ├── readonly_type_declaration_context.java │ │ ├── readonly_value_printer.java │ │ ├── type_action.java │ │ ├── type_declaration_context.java │ │ ├── type_format.java │ │ ├── type_parameters.java │ │ ├── type_utilities.java │ │ ├── typeinfo_value.java │ │ ├── union_type.java │ │ ├── value_printer.java │ │ ├── writeonly_type_declaration_context.java │ │ └── writeonly_value_printer.java │ └── values │ │ ├── any_composite_wrapper.java │ │ ├── any_data_value.java │ │ ├── any_procedure_value.java │ │ ├── any_string_value.java │ │ ├── base_composite_value.java │ │ ├── base_constant_value.java │ │ ├── base_data_value.java │ │ ├── base_procedure.java │ │ ├── base_string_value.java │ │ ├── base_value_action.java │ │ ├── bound_procedure.java │ │ ├── common_values.java │ │ ├── composite_wrapper.java │ │ ├── data_value.java │ │ ├── data_value_action.java │ │ ├── deeply_immutable_composite_wrapper.java │ │ ├── deeply_immutable_data_value.java │ │ ├── deeply_immutable_procedure_value.java │ │ ├── deeply_immutable_string_value.java │ │ ├── enum_value.java │ │ ├── immutable_composite_wrapper.java │ │ ├── immutable_data_value.java │ │ ├── immutable_procedure_value.java │ │ ├── immutable_string_value.java │ │ ├── integer_value.java │ │ ├── list_context.java │ │ ├── list_value.java │ │ ├── ok_signal.java │ │ ├── procedure_value.java │ │ ├── procedure_with_this.java │ │ ├── readonly_composite_wrapper.java │ │ ├── readonly_data_value.java │ │ ├── readonly_procedure_value.java │ │ ├── readonly_string_value.java │ │ ├── singleton_value.java │ │ ├── string_value.java │ │ ├── writeonly_composite_wrapper.java │ │ ├── writeonly_data_value.java │ │ ├── writeonly_procedure_value.java │ │ └── writeonly_string_value.java │ ├── library │ ├── calendars │ │ ├── gregorian_day.java │ │ └── gregorian_month.java │ ├── channels │ │ ├── any_input.java │ │ ├── any_output.java │ │ ├── any_syncable.java │ │ ├── deeply_immutable_input.java │ │ ├── deeply_immutable_output.java │ │ ├── deeply_immutable_syncable.java │ │ ├── immutable_input.java │ │ ├── immutable_output.java │ │ ├── immutable_syncable.java │ │ ├── input.java │ │ ├── output.java │ │ ├── readonly_input.java │ │ ├── readonly_output.java │ │ ├── readonly_syncable.java │ │ ├── syncable.java │ │ ├── writeonly_input.java │ │ ├── writeonly_output.java │ │ └── writeonly_syncable.java │ ├── characters │ │ ├── character_handler.java │ │ └── radixes.java │ ├── elements │ │ ├── any_closeable.java │ │ ├── any_collection.java │ │ ├── any_comparable.java │ │ ├── any_composite_value.java │ │ ├── any_data.java │ │ ├── any_dictionary.java │ │ ├── any_entity.java │ │ ├── any_equality_comparable.java │ │ ├── any_lifespan.java │ │ ├── any_list.java │ │ ├── any_ordered_set.java │ │ ├── any_reference.java │ │ ├── any_reference_equality.java │ │ ├── any_set.java │ │ ├── any_stringable.java │ │ ├── any_value.java │ │ ├── closeable.java │ │ ├── collection.java │ │ ├── comparable.java │ │ ├── composite_value.java │ │ ├── data.java │ │ ├── deeply_immutable_closeable.java │ │ ├── deeply_immutable_collection.java │ │ ├── deeply_immutable_comparable.java │ │ ├── deeply_immutable_composite_value.java │ │ ├── deeply_immutable_data.java │ │ ├── deeply_immutable_dictionary.java │ │ ├── deeply_immutable_entity.java │ │ ├── deeply_immutable_equality_comparable.java │ │ ├── deeply_immutable_lifespan.java │ │ ├── deeply_immutable_list.java │ │ ├── deeply_immutable_ordered_set.java │ │ ├── deeply_immutable_reference.java │ │ ├── deeply_immutable_reference_equality.java │ │ ├── deeply_immutable_set.java │ │ ├── deeply_immutable_stringable.java │ │ ├── deeply_immutable_value.java │ │ ├── dictionary.java │ │ ├── entity.java │ │ ├── enum_data.java │ │ ├── equality_comparable.java │ │ ├── equivalence_relation.java │ │ ├── equivalence_with_hash.java │ │ ├── function0.java │ │ ├── function1.java │ │ ├── function2.java │ │ ├── identifier.java │ │ ├── immutable_closeable.java │ │ ├── immutable_collection.java │ │ ├── immutable_comparable.java │ │ ├── immutable_composite_value.java │ │ ├── immutable_data.java │ │ ├── immutable_dictionary.java │ │ ├── immutable_entity.java │ │ ├── immutable_equality_comparable.java │ │ ├── immutable_lifespan.java │ │ ├── immutable_list.java │ │ ├── immutable_ordered_set.java │ │ ├── immutable_reference.java │ │ ├── immutable_reference_equality.java │ │ ├── immutable_set.java │ │ ├── immutable_stringable.java │ │ ├── immutable_value.java │ │ ├── lifespan.java │ │ ├── list.java │ │ ├── order.java │ │ ├── ordered_set.java │ │ ├── predicate.java │ │ ├── procedure0.java │ │ ├── procedure1.java │ │ ├── procedure2.java │ │ ├── range.java │ │ ├── readonly_closeable.java │ │ ├── readonly_collection.java │ │ ├── readonly_comparable.java │ │ ├── readonly_composite_value.java │ │ ├── readonly_data.java │ │ ├── readonly_dictionary.java │ │ ├── readonly_entity.java │ │ ├── readonly_equality_comparable.java │ │ ├── readonly_lifespan.java │ │ ├── readonly_list.java │ │ ├── readonly_ordered_set.java │ │ ├── readonly_reference.java │ │ ├── readonly_reference_equality.java │ │ ├── readonly_set.java │ │ ├── readonly_stringable.java │ │ ├── readonly_value.java │ │ ├── reference.java │ │ ├── reference_equality.java │ │ ├── relation.java │ │ ├── set.java │ │ ├── sign.java │ │ ├── string.java │ │ ├── stringable.java │ │ ├── value.java │ │ ├── writeonly_closeable.java │ │ ├── writeonly_collection.java │ │ ├── writeonly_comparable.java │ │ ├── writeonly_composite_value.java │ │ ├── writeonly_data.java │ │ ├── writeonly_dictionary.java │ │ ├── writeonly_entity.java │ │ ├── writeonly_equality_comparable.java │ │ ├── writeonly_lifespan.java │ │ ├── writeonly_list.java │ │ ├── writeonly_ordered_set.java │ │ ├── writeonly_reference.java │ │ ├── writeonly_reference_equality.java │ │ ├── writeonly_set.java │ │ ├── writeonly_stringable.java │ │ └── writeonly_value.java │ ├── formats │ │ ├── any_json_array.java │ │ ├── any_json_data.java │ │ ├── any_json_object.java │ │ ├── deeply_immutable_json_array.java │ │ ├── deeply_immutable_json_data.java │ │ ├── deeply_immutable_json_object.java │ │ ├── immutable_json_array.java │ │ ├── immutable_json_data.java │ │ ├── immutable_json_object.java │ │ ├── json_array.java │ │ ├── json_boolean.java │ │ ├── json_data.java │ │ ├── json_null.java │ │ ├── json_number.java │ │ ├── json_object.java │ │ ├── json_string.java │ │ ├── readonly_json_array.java │ │ ├── readonly_json_data.java │ │ ├── readonly_json_object.java │ │ ├── writeonly_json_array.java │ │ ├── writeonly_json_data.java │ │ └── writeonly_json_object.java │ ├── graphs │ │ ├── any_graph.java │ │ ├── deeply_immutable_graph.java │ │ ├── graph.java │ │ ├── immutable_graph.java │ │ ├── readonly_graph.java │ │ └── writeonly_graph.java │ ├── messages │ │ ├── log_level.java │ │ ├── log_message.java │ │ └── message.java │ ├── patterns │ │ ├── matcher.java │ │ ├── pattern.java │ │ └── reversible_pattern.java │ ├── reflections │ │ ├── any_entity_wrapper.java │ │ ├── any_reference_wrapper.java │ │ ├── any_type_id.java │ │ ├── any_value_wrapper.java │ │ ├── any_variable_context.java │ │ ├── any_variable_id.java │ │ ├── deeply_immutable_entity_wrapper.java │ │ ├── deeply_immutable_reference_wrapper.java │ │ ├── deeply_immutable_type_id.java │ │ ├── deeply_immutable_value_wrapper.java │ │ ├── deeply_immutable_variable_context.java │ │ ├── deeply_immutable_variable_id.java │ │ ├── entity_wrapper.java │ │ ├── immutable_entity_wrapper.java │ │ ├── immutable_reference_wrapper.java │ │ ├── immutable_type_id.java │ │ ├── immutable_value_wrapper.java │ │ ├── immutable_variable_context.java │ │ ├── immutable_variable_id.java │ │ ├── readonly_entity_wrapper.java │ │ ├── readonly_reference_wrapper.java │ │ ├── readonly_type_id.java │ │ ├── readonly_value_wrapper.java │ │ ├── readonly_variable_context.java │ │ ├── readonly_variable_id.java │ │ ├── reference_wrapper.java │ │ ├── type_id.java │ │ ├── value_wrapper.java │ │ ├── variable_context.java │ │ ├── variable_id.java │ │ ├── writeonly_entity_wrapper.java │ │ ├── writeonly_reference_wrapper.java │ │ ├── writeonly_type_id.java │ │ ├── writeonly_value_wrapper.java │ │ ├── writeonly_variable_context.java │ │ └── writeonly_variable_id.java │ ├── resources │ │ ├── access_option.java │ │ ├── any_resource.java │ │ ├── any_resource_catalog.java │ │ ├── deeply_immutable_resource.java │ │ ├── deeply_immutable_resource_catalog.java │ │ ├── extension.java │ │ ├── immutable_resource.java │ │ ├── immutable_resource_catalog.java │ │ ├── readonly_resource.java │ │ ├── readonly_resource_catalog.java │ │ ├── resource.java │ │ ├── resource_catalog.java │ │ ├── resource_identifier.java │ │ ├── writeonly_resource.java │ │ └── writeonly_resource_catalog.java │ └── texts │ │ ├── attribute_fragment.java │ │ ├── attribute_id.java │ │ ├── element_id.java │ │ ├── list_attribute_fragment.java │ │ ├── list_text_node.java │ │ ├── special_text.java │ │ ├── string_text_node.java │ │ ├── text_element.java │ │ ├── text_fragment.java │ │ ├── text_namespace.java │ │ └── text_node.java │ └── runtime │ ├── calendars │ ├── base_gregorian_month.java │ └── test_calendars.java │ ├── channels │ ├── appender.java │ ├── auto_sync_output.java │ ├── output_counter.java │ ├── output_transformer.java │ └── test_output_transformer.java │ ├── characters │ ├── quoted_character.java │ └── test_character_handler.java │ ├── elements │ ├── any_has_equivalence.java │ ├── base_dictionary_entry.java │ ├── base_hash_dictionary.java │ ├── base_hash_set.java │ ├── base_immutable_list.java │ ├── base_lifespan.java │ ├── base_list.java │ ├── base_list_dictionary.java │ ├── base_range.java │ ├── base_readonly_list.java │ ├── base_string.java │ ├── debuggable.java │ ├── deeply_immutable_has_equivalence.java │ ├── empty.java │ ├── has_equivalence.java │ ├── hash_dictionary.java │ ├── hash_set.java │ ├── immutable_has_equivalence.java │ ├── immutable_hash_dictionary.java │ ├── immutable_hash_set.java │ ├── immutable_list_dictionary.java │ ├── list_dictionary.java │ ├── readonly_has_equivalence.java │ ├── singleton_collection.java │ ├── test_array.java │ ├── test_dictionary.java │ ├── test_hash_dictionary.java │ ├── test_hash_set.java │ ├── test_list.java │ ├── test_range.java │ ├── test_runtime_util.java │ ├── test_string_writer.java │ ├── utilities.java │ └── writeonly_has_equivalence.java │ ├── flags │ ├── flags_utilities.java │ └── test_flags.java │ ├── formats │ ├── json_array_impl.java │ ├── json_object_impl.java │ ├── json_object_list.java │ ├── json_parser.java │ ├── json_printer.java │ ├── json_token.java │ ├── test_json_parser.java │ └── test_json_printer.java │ ├── graphs │ ├── base_graph.java │ └── test_graph.java │ ├── logs │ ├── any_displayable.java │ ├── deeply_immutable_displayable.java │ ├── displayable.java │ ├── immutable_displayable.java │ ├── log.java │ ├── readonly_displayable.java │ ├── simple_message.java │ ├── test_display.java │ └── writeonly_displayable.java │ ├── patterns │ ├── any_validatable.java │ ├── base_pattern.java │ ├── base_repeat_element.java │ ├── deeply_immutable_validatable.java │ ├── immutable_validatable.java │ ├── list_pattern.java │ ├── one_pattern.java │ ├── option_matcher.java │ ├── option_pattern.java │ ├── predicate_pattern.java │ ├── procedure_matcher.java │ ├── readonly_validatable.java │ ├── repeat_element.java │ ├── repeat_matcher.java │ ├── repeat_pattern.java │ ├── sequence_matcher.java │ ├── sequence_pattern.java │ ├── singleton_pattern.java │ ├── test_list_pattern.java │ ├── test_option_matcher.java │ ├── test_option_pattern.java │ ├── test_predicate_pattern.java │ ├── test_procedure_matcher.java │ ├── test_repeat_element.java │ ├── test_repeat_matcher.java │ ├── test_repeat_pattern.java │ ├── test_sequence_matcher.java │ ├── test_sequence_pattern.java │ ├── test_singleton_pattern.java │ ├── validatable.java │ └── writeonly_validatable.java │ ├── reflections │ ├── constant_reference.java │ └── simple_reference.java │ ├── resources │ ├── any_resource_store.java │ ├── base_extension.java │ ├── base_resource_catalog.java │ ├── base_resource_identifier.java │ ├── base_resource_store.java │ ├── deeply_immutable_resource_store.java │ ├── immutable_resource_store.java │ ├── make_catalog_option.java │ ├── readonly_resource_store.java │ ├── resource_store.java │ ├── resource_util.java │ ├── test_resolver.java │ └── writeonly_resource_store.java │ ├── tests │ ├── all_tests.java │ └── run_tests.java │ └── texts │ ├── attribute_state.java │ ├── base_attribute_id.java │ ├── base_element.java │ ├── base_element_id.java │ ├── base_list_attribute_fragment.java │ ├── base_list_text_node.java │ ├── base_namespace.java │ ├── markup_formatter.java │ ├── markup_grammar.java │ ├── markup_parser.java │ ├── plain_formatter.java │ ├── test_elements.java │ ├── test_markup_grammar.java │ ├── test_markup_text.java │ ├── test_plain_text.java │ ├── text_entity.java │ ├── text_formatter.java │ ├── text_library.java │ ├── text_rewriter.java │ ├── text_utilities.java │ ├── text_visitor.java │ └── underline_style.java ├── development ├── comments │ ├── comment.i │ ├── comment_type.i │ ├── comments.i │ ├── documentation.i │ ├── documentation_section.i │ └── summary_extractor.i ├── components │ ├── components.i │ ├── printer.i │ └── transformer.i ├── constructs │ ├── annotation_construct.i │ ├── base_construct.i │ ├── block_construct.i │ ├── case_clause_construct.i │ ├── comment_construct.i │ ├── conditional_construct.i │ ├── constraint_category.i │ ├── constraint_construct.i │ ├── construct_visitor.i │ ├── constructs.i │ ├── empty_construct.i │ ├── enum_util.i │ ├── extension_construct.i │ ├── flavor_construct.i │ ├── grammar_construct.i │ ├── grouping_type.i │ ├── import_construct.i │ ├── jump_construct.i │ ├── list_construct.i │ ├── literal_construct.i │ ├── loop_construct.i │ ├── modifier_construct.i │ ├── name_construct.i │ ├── operator_construct.i │ ├── parameter_construct.i │ ├── procedure_construct.i │ ├── resolve_construct.i │ ├── return_construct.i │ ├── supertype_construct.i │ ├── switch_construct.i │ ├── type_announcement_construct.i │ ├── type_declaration_construct.i │ └── variable_construct.i ├── declarations │ ├── annotation_library.i │ ├── annotation_set.i │ ├── base_annotation_set.i │ ├── block_declaration.i │ ├── declaration_pass.i │ ├── declaration_util.i │ ├── declarations.i │ ├── import_declaration.i │ ├── named_declaration.i │ ├── procedure_category.i │ ├── procedure_declaration.i │ ├── supertype_declaration.i │ ├── type_announcement.i │ ├── type_declaration.i │ ├── type_parameter_declaration.i │ ├── variable_category.i │ └── variable_declaration.i ├── development.i ├── documenters │ ├── doc_comment_processor.i │ ├── doc_elements.i │ ├── doc_grammar.i │ ├── doc_parser.i │ ├── documenters.i │ └── test_doc_grammar.i ├── elements │ ├── abstract_value.i │ ├── access_modifier.i │ ├── action.i │ ├── action_context.i │ ├── action_name.i │ ├── action_parameters.i │ ├── analysis_result.i │ ├── analyzable.i │ ├── construct.i │ ├── declaration.i │ ├── elements.i │ ├── execution_context.i │ ├── flavor_profile.i │ ├── kind.i │ ├── language_settings.i │ ├── literal.i │ ├── modifier_kind.i │ ├── notification.i │ ├── origin.i │ ├── principal_type.i │ ├── simple_name.i │ ├── specialization_context.i │ ├── subtype_tag.i │ ├── token.i │ ├── token_type.i │ ├── type.i │ └── type_flavor.i ├── flags │ ├── create_flags.i │ ├── debug.i │ └── flags.i ├── flavors │ ├── base_flavor_profile.i │ ├── flavor.i │ ├── flavor_profiles.i │ ├── flavors.i │ └── type_flavor_impl.i ├── futures │ ├── base_future.i │ ├── base_lifespan.i │ ├── base_operation.i │ ├── disposable.i │ ├── event_queue.i │ ├── future.i │ ├── futures.i │ ├── lifespan.i │ ├── operation.i │ ├── resource_manager.i │ └── test_futures.i ├── grammars │ ├── grammar_scanner.i │ ├── grammars.i │ ├── nonterminal_construct.i │ ├── production_construct.i │ ├── rule_construct.i │ ├── term_construct.i │ ├── term_repeat.i │ └── terminal_construct.i ├── jumps │ ├── jump_category.i │ ├── jump_wrapper.i │ ├── jumps.i │ ├── panic_value.i │ └── returned_value.i ├── kinds │ ├── base_kind.i │ ├── base_subtype_tag.i │ ├── kinds.i │ ├── subtype_tags.i │ └── type_kinds.i ├── languages │ ├── annotation_list_order.i │ ├── java_language.i │ ├── javascript_language.i │ └── languages.i ├── literals │ ├── integer_literal.i │ ├── literal_fragment.i │ ├── literals.i │ ├── quoted_fragment.i │ ├── string_fragment.i │ └── string_literal.i ├── modifiers │ ├── base_modifier_kind.i │ ├── general_modifier.i │ ├── modifiers.i │ └── variance_modifier.i ├── names │ ├── base_token_type.i │ ├── cast_type.i │ ├── common_names.i │ ├── keyword.i │ ├── keywords.i │ ├── name_utilities.i │ ├── names.i │ ├── operator.i │ ├── operator_type.i │ ├── precedence.i │ ├── punctuation.i │ ├── punctuation_type.i │ ├── quote_type.i │ ├── special_name.i │ ├── special_token_type.i │ └── test_names.i ├── notifications │ ├── base_notification.i │ ├── error_action.i │ ├── error_signal.i │ ├── messages.i │ ├── notification_context.i │ ├── notification_level.i │ ├── notification_output.i │ ├── notification_utilities.i │ ├── notifications.i │ └── signal.i ├── origins │ ├── fragment_origin.i │ ├── origin_printer.i │ ├── origin_utilities.i │ ├── origins.i │ ├── source_content.i │ ├── special_origin.i │ ├── test_origin_printer.i │ └── text_origin.i ├── scanners │ ├── base_scanner_config.i │ ├── base_scanner_element.i │ ├── base_token.i │ ├── documenter_filter.i │ ├── hash_element.i │ ├── integer_token_element.i │ ├── line_comment.i │ ├── punctuation_element.i │ ├── quoted_token_element.i │ ├── scan_state.i │ ├── scanner_config.i │ ├── scanner_element.i │ ├── scanner_engine.i │ ├── scanners.i │ └── string_token_element.i ├── symbols │ ├── base_symbols_map.i │ └── symbols.i ├── tests │ ├── all_tests.i │ └── tests.i ├── types │ ├── base_principal_type.i │ ├── base_type.i │ ├── base_value_printer.i │ ├── common_types.i │ ├── concrete_type_action.i │ ├── flavored_type.i │ ├── master_type.i │ ├── null_wrapper.i │ ├── parametrizable_state.i │ ├── parametrized_type.i │ ├── type_action.i │ ├── type_declaration_context.i │ ├── type_format.i │ ├── type_parameters.i │ ├── type_utilities.i │ ├── typeinfo_value.i │ ├── types.i │ ├── union_type.i │ └── value_printer.i └── values │ ├── base_composite_value.i │ ├── base_constant_value.i │ ├── base_data_value.i │ ├── base_procedure.i │ ├── base_string_value.i │ ├── base_value_action.i │ ├── bound_procedure.i │ ├── common_values.i │ ├── composite_wrapper.i │ ├── data_value.i │ ├── data_value_action.i │ ├── enum_value.i │ ├── integer_value.i │ ├── list_context.i │ ├── list_value.i │ ├── ok_signal.i │ ├── procedure_value.i │ ├── procedure_with_this.i │ ├── singleton_value.i │ ├── string_value.i │ └── values.i ├── documentation ├── TODO.md ├── build-targets.txt ├── communication.html ├── diagrams │ ├── Architecture.graffle │ └── TypeFlavors.graffle ├── documentation.i ├── here_be_dragons.html ├── homepage.html ├── index.html ├── install_and_run.html ├── license.html ├── quickstart.html ├── quote.txt ├── random-notes.txt ├── source.html ├── tmp_design.md └── type_flavors.html ├── experimental ├── coach │ ├── Makefile │ └── ideal │ │ └── showcase │ │ └── coach │ │ ├── appengine │ │ ├── base_handler.java │ │ ├── base_servlet.java │ │ ├── base_user_state.java │ │ ├── dispatcher_servlet.java │ │ ├── fluid_context.java │ │ ├── maintenance_servlet.java │ │ ├── request_handler.java │ │ ├── servlet_resources.java │ │ ├── test_servlet.java │ │ └── user_state.java │ │ ├── common │ │ ├── base_procedure0.java │ │ ├── error_message.java │ │ ├── invokable_procedure0.java │ │ ├── procedure1.java │ │ ├── procedure1_data_type.java │ │ ├── procedure1_data_value.java │ │ ├── procedure_id.java │ │ ├── protocol.java │ │ ├── sorter.java │ │ └── text_content.java │ │ ├── forms │ │ ├── bold.java │ │ ├── button.java │ │ ├── div.java │ │ ├── form.java │ │ ├── hbox.java │ │ ├── html_text.java │ │ ├── javascript.java │ │ ├── label.java │ │ ├── link.java │ │ ├── procedure0arg.java │ │ ├── raw_html.java │ │ ├── select_input.java │ │ ├── simple_link.java │ │ ├── text_input.java │ │ ├── textarea_input.java │ │ ├── vbox.java │ │ ├── widget.java │ │ └── widget_visitor.java │ │ ├── marshallers │ │ ├── json_data.java │ │ └── marshaller.java │ │ ├── reflections │ │ ├── composite_data_value.java │ │ ├── data_type.java │ │ ├── datastore_schema.java │ │ ├── datastore_state.java │ │ ├── element_reference.java │ │ ├── enum_type.java │ │ ├── field_reference.java │ │ ├── list_wrapper.java │ │ ├── name.java │ │ ├── simple_variable_id.java │ │ ├── translation_result.java │ │ └── translator.java │ │ ├── resources │ │ ├── coach.i │ │ ├── coachall.json │ │ ├── coachdata.json │ │ ├── runtime.js │ │ └── war-template │ │ │ ├── WEB-INF │ │ │ ├── appengine-generated │ │ │ │ ├── datastore-indexes-auto.xml │ │ │ │ └── local_db.bin │ │ │ ├── appengine-web.xml │ │ │ ├── logging.properties │ │ │ └── web.xml │ │ │ ├── favicon.ico │ │ │ ├── ideal.css │ │ │ └── test.html │ │ └── webforms │ │ ├── input_id_generator.java │ │ ├── model_updater.java │ │ ├── parameter_context.java │ │ ├── render_context.java │ │ └── view_renderer.java ├── grammars │ ├── markup_grammar.i │ └── metagrammar.g4 ├── jparser │ ├── HelloWorld.java │ ├── JavaConstructBuilder.java │ ├── JavaLexer.g4 │ ├── JavaParser.g4 │ └── TestParser.java ├── mini │ ├── Makefile │ └── ideal │ │ └── experimental │ │ └── mini │ │ ├── analysis.java │ │ ├── bootstrapped.i │ │ ├── bootstrapped.java │ │ ├── create.java │ │ ├── feedback.java │ │ ├── header.txt │ │ ├── hi.java │ │ ├── library.java │ │ ├── names.java │ │ ├── parser.java │ │ ├── printer.java │ │ ├── test.i │ │ ├── test2.i │ │ ├── tokenizer.java │ │ └── transform.java └── qeylan │ ├── employees.i │ ├── employees2.i │ ├── service.i │ └── todo.i ├── ideal.i ├── jsource └── ideal │ ├── development │ ├── actions │ │ ├── action_table.java │ │ ├── action_utilities.java │ │ ├── allocate_action.java │ │ ├── analysis_context.java │ │ ├── base_action.java │ │ ├── base_analysis_context.java │ │ ├── base_execution_context.java │ │ ├── base_semantics.java │ │ ├── block_action.java │ │ ├── cast_action.java │ │ ├── chain_action.java │ │ ├── chainable_action.java │ │ ├── conditional_action.java │ │ ├── constraint_action.java │ │ ├── dereference_action.java │ │ ├── dispatch_action.java │ │ ├── instance_variable.java │ │ ├── is_action.java │ │ ├── list_action.java │ │ ├── list_initializer_action.java │ │ ├── local_variable.java │ │ ├── loop_action.java │ │ ├── loop_jump_wrapper.java │ │ ├── narrow_action.java │ │ ├── proc_as_ref_action.java │ │ ├── promotion_action.java │ │ ├── promotion_set.java │ │ ├── return_action.java │ │ ├── static_variable.java │ │ ├── stub_action.java │ │ ├── supertype_set.java │ │ ├── type_and_action.java │ │ ├── type_equivalence.java │ │ ├── type_policy.java │ │ ├── variable_action.java │ │ ├── variable_initializer.java │ │ └── variable_wrapper.java │ ├── analyzers │ │ ├── action_plus_constraints.java │ │ ├── analysis_pass.java │ │ ├── analyzable_action.java │ │ ├── analyzer_utilities.java │ │ ├── base_analyzable_action.java │ │ ├── base_analyzer.java │ │ ├── block_analyzer.java │ │ ├── builtin_declaration.java │ │ ├── conditional_analyzer.java │ │ ├── constraint.java │ │ ├── constraint_analyzer.java │ │ ├── constraint_state.java │ │ ├── constraint_type.java │ │ ├── declaration_analyzer.java │ │ ├── declaration_extension.java │ │ ├── dispatcher.java │ │ ├── enum_value_analyzer.java │ │ ├── extension_kind.java │ │ ├── field_declaration.java │ │ ├── flavor_analyzer.java │ │ ├── grammar_analyzer.java │ │ ├── import_analyzer.java │ │ ├── jump_analyzer.java │ │ ├── list_analyzer.java │ │ ├── list_initializer_analyzer.java │ │ ├── literal_analyzer.java │ │ ├── local_variable_declaration.java │ │ ├── loop_analyzer.java │ │ ├── mapping_visitor.java │ │ ├── mismatch_reporter.java │ │ ├── multi_pass_analyzer.java │ │ ├── overloaded_procedure.java │ │ ├── parameter_analyzer.java │ │ ├── procedure_analyzer.java │ │ ├── procedure_executor.java │ │ ├── resolve_analyzer.java │ │ ├── return_analyzer.java │ │ ├── simple_type_announcement.java │ │ ├── single_pass_analyzer.java │ │ ├── specialized_procedure.java │ │ ├── specialized_variable.java │ │ ├── supertype_analyzer.java │ │ ├── syntax_extension.java │ │ ├── type_announcement_analyzer.java │ │ ├── type_declaration_analyzer.java │ │ ├── type_parameter_analyzer.java │ │ └── variable_analyzer.java │ ├── extensions │ │ ├── auto_constructor_extension.java │ │ ├── cache_result_extension.java │ │ ├── extension_action.java │ │ ├── extension_analyzer.java │ │ ├── for_analyzer.java │ │ ├── for_construct.java │ │ ├── grouping_analyzer.java │ │ ├── list_iteration_analyzer.java │ │ ├── list_iteration_construct.java │ │ ├── meta_construct_extension.java │ │ ├── meta_flags_extension.java │ │ ├── not_yet_implemented_extension.java │ │ ├── package_construct.java │ │ ├── please_construct.java │ │ ├── supertype_of_extension.java │ │ ├── test_case_extension.java │ │ ├── use_construct.java │ │ ├── while_analyzer.java │ │ └── while_construct.java │ ├── functions │ │ ├── add_assign_op.java │ │ ├── add_op.java │ │ ├── assign_op.java │ │ ├── base_number_op.java │ │ ├── binary_procedure.java │ │ ├── cast_op.java │ │ ├── concatenate_assign_op.java │ │ ├── concatenate_op.java │ │ ├── escape_fn.java │ │ ├── info_fn.java │ │ ├── is_op.java │ │ ├── less_op.java │ │ ├── multiply_assign_op.java │ │ ├── multiply_op.java │ │ ├── string_helper.java │ │ ├── test_library.java │ │ └── type_union_op.java │ ├── parsers │ │ ├── base_parser.cup │ │ ├── base_wrapper.java │ │ ├── javacup_adapter.java │ │ ├── loader.java │ │ └── parser_util.java │ ├── policies │ │ ├── base_policy.java │ │ ├── base_specialization_context.java │ │ ├── general_policy.java │ │ ├── namespace_policy.java │ │ ├── specialized_type_declaration.java │ │ └── test_suite_policy.java │ ├── printers │ │ ├── base_printer.java │ │ ├── file_rewriter.java │ │ ├── html_rewriter.java │ │ ├── ideal_rewriter.java │ │ ├── java_printer.java │ │ ├── javascript_printer.java │ │ ├── naming_rewriter.java │ │ ├── naming_strategy.java │ │ ├── populate_xref.java │ │ ├── printer_assistant.java │ │ ├── printer_mode.java │ │ ├── printer_util.java │ │ ├── publish_generator.java │ │ ├── publish_mode.java │ │ ├── styles.java │ │ ├── website_rewriter.java │ │ ├── xref_context.java │ │ ├── xref_mode.java │ │ └── xref_printer.java │ ├── switches │ │ ├── switch_action.java │ │ └── switch_analyzer.java │ ├── targets │ │ ├── analyze_target.java │ │ ├── java_generator_target.java │ │ ├── printer_target.java │ │ ├── publish_target.java │ │ ├── target_construct.java │ │ ├── target_declaration.java │ │ ├── target_manager.java │ │ ├── target_value.java │ │ └── type_processor_target.java │ ├── templates │ │ ├── attribute_handler.java │ │ ├── element_handler.java │ │ ├── iteration_handler.java │ │ ├── sexpression_construct.java │ │ ├── sexpression_handler.java │ │ ├── sexpression_library.java │ │ ├── template_analyzer.java │ │ └── template_construct.java │ ├── tools │ │ ├── common_scanner.java │ │ ├── create.java │ │ ├── create_manager.java │ │ ├── create_util.java │ │ ├── import_util.java │ │ ├── reflect_util.java │ │ └── status.java │ └── transformers │ │ ├── annotation_category.java │ │ ├── base_transformer.java │ │ ├── content_writer.java │ │ ├── declaration_visitor.java │ │ ├── java_generator.java │ │ ├── java_library.java │ │ ├── to_java_transformer.java │ │ ├── to_javascript_transformer.java │ │ └── type_bootstrapper.java │ └── machine │ ├── annotations │ └── dont_display.java │ ├── calendars │ ├── base_gregorian_day.java │ └── calendar_utilities.java │ ├── channels │ ├── standard_channels.java │ ├── string_writer.java │ └── writer_adapter.java │ ├── characters │ └── unicode_handler.java │ ├── elements │ ├── array.java │ ├── displayer.java │ └── runtime_util.java │ └── resources │ ├── base_readonly_store.java │ ├── file_store.java │ ├── filesystem.java │ ├── io_util.java │ └── network.java ├── library ├── calendars.i ├── channels.i ├── characters.i ├── elements.i ├── formats.i ├── graphs.i ├── library.i ├── messages.i ├── operators.i ├── patterns.i ├── reflections.i ├── resources.i └── texts.i ├── machine ├── adapters.i ├── annotations.i ├── calendars.i ├── channels.i ├── characters.i ├── elements.i ├── machine.i └── resources.i ├── runtime ├── calendars │ ├── base_gregorian_month.i │ ├── calendars.i │ └── test_calendars.i ├── channels │ ├── appender.i │ ├── auto_sync_output.i │ ├── channels.i │ ├── output_counter.i │ ├── output_transformer.i │ └── test_output_transformer.i ├── characters │ ├── characters.i │ ├── quoted_character.i │ └── test_character_handler.i ├── elements │ ├── base_dictionary_entry.i │ ├── base_hash_dictionary.i │ ├── base_hash_set.i │ ├── base_immutable_list.i │ ├── base_lifespan.i │ ├── base_list.i │ ├── base_list_dictionary.i │ ├── base_range.i │ ├── base_readonly_list.i │ ├── base_string.i │ ├── debuggable.i │ ├── elements.i │ ├── empty.i │ ├── has_equivalence.i │ ├── hash_dictionary.i │ ├── hash_set.i │ ├── immutable_hash_dictionary.i │ ├── immutable_hash_set.i │ ├── immutable_list_dictionary.i │ ├── list_dictionary.i │ ├── singleton_collection.i │ ├── test_array.i │ ├── test_dictionary.i │ ├── test_hash_dictionary.i │ ├── test_hash_set.i │ ├── test_list.i │ ├── test_range.i │ ├── test_runtime_util.i │ ├── test_string_writer.i │ └── utilities.i ├── flags │ ├── flags.i │ ├── flags_utilities.i │ └── test_flags.i ├── formats │ ├── formats.i │ ├── json_array_impl.i │ ├── json_object_impl.i │ ├── json_object_list.i │ ├── json_parser.i │ ├── json_printer.i │ ├── json_token.i │ ├── test_json_parser.i │ └── test_json_printer.i ├── graphs │ ├── base_graph.i │ ├── graphs.i │ └── test_graph.i ├── logs │ ├── displayable.i │ ├── log.i │ ├── logs.i │ ├── simple_message.i │ └── test_display.i ├── patterns │ ├── base_pattern.i │ ├── base_repeat_element.i │ ├── list_pattern.i │ ├── one_pattern.i │ ├── option_matcher.i │ ├── option_pattern.i │ ├── patterns.i │ ├── predicate_pattern.i │ ├── procedure_matcher.i │ ├── repeat_element.i │ ├── repeat_matcher.i │ ├── repeat_pattern.i │ ├── repeat_sequence_pattern.i │ ├── sequence_matcher.i │ ├── sequence_pattern.i │ ├── singleton_pattern.i │ ├── test_list_pattern.i │ ├── test_option_matcher.i │ ├── test_option_pattern.i │ ├── test_predicate_pattern.i │ ├── test_procedure_matcher.i │ ├── test_repeat_element.i │ ├── test_repeat_matcher.i │ ├── test_repeat_pattern.i │ ├── test_sequence_matcher.i │ ├── test_sequence_pattern.i │ ├── test_singleton_pattern.i │ └── validatable.i ├── reflections │ ├── constant_reference.i │ ├── reflections.i │ └── simple_reference.i ├── resources │ ├── base_extension.i │ ├── base_resource_catalog.i │ ├── base_resource_identifier.i │ ├── base_resource_store.i │ ├── make_catalog_option.i │ ├── resource_store.i │ ├── resource_util.i │ ├── resources.i │ └── test_resolver.i ├── runtime.i ├── tests │ ├── all_tests.i │ ├── run_tests.i │ └── tests.i └── texts │ ├── attribute_state.i │ ├── base_attribute_id.i │ ├── base_element.i │ ├── base_element_id.i │ ├── base_list_attribute_fragment.i │ ├── base_list_text_node.i │ ├── base_namespace.i │ ├── markup_formatter.i │ ├── markup_grammar.i │ ├── markup_parser.i │ ├── plain_formatter.i │ ├── test_elements.i │ ├── test_markup_grammar.i │ ├── test_markup_text.i │ ├── test_plain_text.i │ ├── text_entity.i │ ├── text_formatter.i │ ├── text_library.i │ ├── text_rewriter.i │ ├── text_utilities.i │ ├── text_visitor.i │ ├── texts.i │ └── underline_style.i ├── showcase ├── base_token.i ├── briefing.i ├── circle.i ├── hello.i ├── reflect.i ├── showcase.i ├── testparser.i ├── tests.i ├── token.i └── xreftest.i ├── testdata ├── bootstrap-out.html ├── bootstrap-out.txt ├── bootstrap.i ├── bootstrap.out ├── coach-out.html ├── coach-out.txt ├── coach.i ├── coach.out ├── double-out.html ├── double-out.txt ├── double.i ├── double.out ├── hello-out.html ├── hello-out.txt ├── hello.i ├── hello.out ├── list-out.html ├── list-out.txt ├── list.i ├── list.out ├── sequence-out.html ├── sequence-out.txt ├── sequence.i └── sequence.out └── tests ├── 1.i ├── 12.i ├── cache.i ├── directory.i ├── list.i ├── string.i └── var.i /.gitignore: -------------------------------------------------------------------------------- 1 | tmp 2 | build 3 | thirdparty 4 | *.swp 5 | .DS_Store 6 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of ideal authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS files. 3 | # See the latter for an explanation. 4 | 5 | # Names should be added to this file as: 6 | # Name or Organization 7 | # The email address is not required for organizations. 8 | 9 | Dynin Labs Inc. 10 | Google Inc. 11 | -------------------------------------------------------------------------------- /CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # People who have agreed to one of the CLAs and can contribute patches. 2 | # The AUTHORS file lists the copyright holders; this file 3 | # lists people. For example, Google employees are listed here 4 | # but not in AUTHORS, because Google holds the copyright. 5 | # 6 | # https://developers.google.com/open-source/cla/individual 7 | # https://developers.google.com/open-source/cla/corporate 8 | # 9 | # Names should be added to this file as: 10 | # Name 11 | 12 | Misha Dynin 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | The ideal metaprogramming framework has a [website](https://theideal.org/) with 2 | [documentation](https://theideal.org/documentation/). 3 | -------------------------------------------------------------------------------- /bin/antlr: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . `dirname $0`/env.sh 3 | 4 | ${JAVA} -jar ${ANTLR_JAR} "$@" 5 | -------------------------------------------------------------------------------- /bin/check-dependencies.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | grep -h '^import ideal.development' * | sort -u | cut -d. -f3- 4 | -------------------------------------------------------------------------------- /bin/count.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | wc -l `find ideal -name \*.\* -print` 4 | 5 | -------------------------------------------------------------------------------- /bin/doc-regression.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . bin/env.sh 3 | 4 | if $BUILDI 5 | then 6 | echo "Build ok" 7 | else 8 | echo "Build error" 9 | exit 1 10 | fi 11 | 12 | make buildall 13 | 14 | for f in $FILES 15 | do 16 | echo "=== ${f} ===" 17 | ${IDOC} -input=${TESTDIR}/${f}.i | ${DIFF} ${TESTDIR}/${f}-out.html - 18 | ${ITEXTDOC} -input=${TESTDIR}/${f}.i | ${DIFF} ${TESTDIR}/${f}-out.txt - 19 | done 20 | -------------------------------------------------------------------------------- /bin/doc-reset-regression.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . bin/env.sh 3 | 4 | if $BUILDI 5 | then 6 | echo "Build ok" 7 | else 8 | echo "Build error" 9 | exit 1 10 | fi 11 | 12 | echo RESETTING REGRESSION--ARE YOU SURE\? 13 | read 14 | 15 | for f in $FILES 16 | do 17 | echo "=== ${f} ===" 18 | $IDOC -input=${TESTDIR}/${f}.i > ${TESTDIR}/${f}-out.html 19 | $ITEXTDOC -input=${TESTDIR}/${f}.i > ${TESTDIR}/${f}-out.txt 20 | done 21 | -------------------------------------------------------------------------------- /bin/g: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ALLFILES="`find library runtime machine development experimental showcase -name \*.i` \ 4 | `find jsource -name \*.java` \ 5 | jsource/ideal/*/*/*.cup \ 6 | testdata/* \ 7 | Makefile" 8 | #`find jsource bootstrapped -name \*.java` \ 9 | 10 | grep $1 $ALLFILES 11 | -------------------------------------------------------------------------------- /bin/grun: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . `dirname $0`/env.sh 3 | 4 | ${JAVA} org.antlr.v4.gui.TestRig "$@" 5 | -------------------------------------------------------------------------------- /bin/idoc.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . bin/env.sh 3 | 4 | if [ x"$1" != x ] 5 | then 6 | SOURCE="$1" 7 | else 8 | SOURCE="testdata/bootstrap.i" 9 | fi 10 | 11 | $IDOC -input=${SOURCE} 12 | -------------------------------------------------------------------------------- /bin/irun.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . bin/env.sh 3 | 4 | if [ x"$1" != x ] 5 | then 6 | SOURCE="$1" 7 | else 8 | SOURCE="testdata/bootstrap.i" 9 | fi 10 | 11 | $IRUN -input=${SOURCE} 12 | -------------------------------------------------------------------------------- /bin/j2i.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | PACKAGE=types 4 | TMPDIR=tmp/i 5 | IDEAL=ideal.i 6 | ALLFILES="jsource/ideal/development/${PACKAGE}/*.java" 7 | PKGFILE=${TMPDIR}/${PACKAGE}.i 8 | 9 | mkdir -p $TMPDIR 10 | 11 | head -n 6 $IDEAL > $PKGFILE 12 | 13 | for OLDFILE in $ALLFILES 14 | do 15 | NAME=`basename "${OLDFILE}" .java` 16 | echo ==$NAME 17 | echo " interface ${NAME};" >> $PKGFILE 18 | NEWFILE=${TMPDIR}/${NAME}.i 19 | head -n 6 $IDEAL > $NEWFILE 20 | tail -n +11 < $OLDFILE >> $NEWFILE 21 | done 22 | -------------------------------------------------------------------------------- /bin/process-base-symbols-map.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | cat < $TMPFILE 19 | diff $FILE $TMPFILE 20 | mv -f $TMPFILE $FILE 21 | done 22 | -------------------------------------------------------------------------------- /bin/reset-regression.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . bin/env.sh 3 | 4 | if $BUILDI 5 | then 6 | echo "Build ok" 7 | else 8 | echo "Build error" 9 | exit 1 10 | fi 11 | 12 | echo RESETTING REGRESSION--ARE YOU SURE\? 13 | read 14 | 15 | for f in $FILES 16 | do 17 | echo "=== ${f} ===" 18 | $IRUN -input=${TESTDIR}/${f}.i > ${TESTDIR}/${f}.out 19 | done 20 | -------------------------------------------------------------------------------- /bin/run-briefing.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | cd $HOME/Projects/ideal 4 | #cd /home/dynin/ideal 5 | 6 | LOG=../briefing/run.log 7 | 8 | echo ============= >> $LOG 9 | date >> $LOG 10 | thirdparty/jdk/bin/java -ea -Dfile.encoding=UTF-8 -Djava.net.preferIPv6Addresses=true \ 11 | -classpath build/classes:thirdparty/jsr305-3.0.2.jar:thirdparty/java-cup-11b.jar \ 12 | ideal.showcase.briefing 2>&1 >> $LOG 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/any_documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface any_documentation { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/deeply_immutable_documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface deeply_immutable_documentation extends immutable_documentation { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | import javax.annotation.Nullable; 10 | 11 | public interface documentation extends readonly_documentation, writeonly_documentation { 12 | @Nullable text_fragment section(documentation_section the_section); 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/documentation_section.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation_section.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public enum documentation_section implements enum_data { 10 | ALL, 11 | SUMMARY; 12 | public string to_string() { 13 | return new base_string(toString()); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/immutable_documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface immutable_documentation extends readonly_documentation { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/readonly_documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface readonly_documentation extends readonly_data, any_documentation { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/comments/writeonly_documentation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/comments/documentation.i 2 | 3 | package ideal.development.comments; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface writeonly_documentation extends any_documentation { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/any_printer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/printer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | import ideal.library.texts.text_fragment; 8 | 9 | public interface any_printer extends any_value { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/any_transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface any_transformer extends any_value { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/deeply_immutable_printer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/printer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | import ideal.library.texts.text_fragment; 8 | 9 | public interface deeply_immutable_printer extends deeply_immutable_value, immutable_printer { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/deeply_immutable_transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface deeply_immutable_transformer extends deeply_immutable_value, immutable_transformer { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/immutable_printer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/printer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | import ideal.library.texts.text_fragment; 8 | 9 | public interface immutable_printer extends immutable_value, readonly_printer { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/immutable_transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface immutable_transformer extends immutable_value, readonly_transformer { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/printer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/printer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | import ideal.library.texts.text_fragment; 8 | 9 | public interface printer extends value, readonly_printer, writeonly_printer { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/readonly_transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface readonly_transformer extends readonly_value, any_transformer { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface transformer extends value, readonly_transformer, writeonly_transformer { 9 | construct transform(construct c); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/writeonly_printer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/printer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | import ideal.library.texts.text_fragment; 8 | 9 | public interface writeonly_printer extends writeonly_value, any_printer { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/components/writeonly_transformer.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/components/transformer.i 2 | 3 | package ideal.development.components; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.development.elements.*; 7 | 8 | public interface writeonly_transformer extends writeonly_value, any_transformer { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface annotation_construct extends construct, readonly_annotation_construct, writeonly_annotation_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/any_annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface any_annotation_construct extends any_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/deeply_immutable_annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface deeply_immutable_annotation_construct extends deeply_immutable_construct, immutable_annotation_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/immutable_annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface immutable_annotation_construct extends immutable_construct, readonly_annotation_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/readonly_annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface readonly_annotation_construct extends readonly_construct, any_annotation_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/constructs/writeonly_annotation_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/constructs/annotation_construct.i 2 | 3 | package ideal.development.constructs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.runtime.elements.*; 7 | import ideal.development.elements.*; 8 | import ideal.development.names.*; 9 | 10 | public interface writeonly_annotation_construct extends writeonly_construct, any_annotation_construct { } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface abstract_value extends stringable, readonly_abstract_value, writeonly_abstract_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface action extends analysis_result, origin, readonly_action, writeonly_action { 9 | action combine(action from, origin the_origin); 10 | entity_wrapper execute(entity_wrapper from_entity, execution_context context); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/action_name.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_name.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface action_name extends identifier, deeply_immutable_reference_equality { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface analysis_result extends origin, readonly_analysis_result, writeonly_analysis_result { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface analyzable extends origin, readonly_analyzable, writeonly_analyzable { 8 | analysis_result analyze(); 9 | readonly_list children(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_abstract_value extends any_stringable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface any_action extends any_analysis_result, any_origin { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_action_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.graphs.graph; 7 | 8 | public interface any_action_context extends any_value { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_analysis_result extends any_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_analyzable extends any_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_construct extends any_data, any_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_declaration extends any_analyzable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_execution_context extends any_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_flavor_profile extends any_reference_equality { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_language_settings extends any_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_origin extends any_data, any_reference_equality, any_stringable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_principal_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/principal_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_principal_type extends any_type { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/any_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface any_type extends any_abstract_value, any_data, any_stringable, any_reference_equality, any_type_id { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface construct extends data, origin, readonly_construct, writeonly_construct { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface declaration extends analyzable, readonly_declaration, writeonly_declaration { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_abstract_value extends deeply_immutable_stringable, immutable_abstract_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface deeply_immutable_action extends deeply_immutable_analysis_result, deeply_immutable_origin, immutable_action { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_action_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.graphs.graph; 7 | 8 | public interface deeply_immutable_action_context extends deeply_immutable_value, immutable_action_context { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_analysis_result extends deeply_immutable_origin, immutable_analysis_result { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_analyzable extends deeply_immutable_origin, immutable_analyzable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_construct extends deeply_immutable_data, deeply_immutable_origin, immutable_construct { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_declaration extends deeply_immutable_analyzable, immutable_declaration { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_execution_context extends deeply_immutable_value, immutable_execution_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_flavor_profile extends deeply_immutable_reference_equality, immutable_flavor_profile { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_language_settings extends deeply_immutable_value, immutable_language_settings { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_origin extends deeply_immutable_data, deeply_immutable_reference_equality, deeply_immutable_stringable, immutable_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_principal_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/principal_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_principal_type extends deeply_immutable_type, immutable_principal_type { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/deeply_immutable_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface deeply_immutable_type extends deeply_immutable_abstract_value, deeply_immutable_data, deeply_immutable_stringable, deeply_immutable_reference_equality, deeply_immutable_type_id, immutable_type { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface execution_context extends value, readonly_execution_context, writeonly_execution_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface flavor_profile extends reference_equality, readonly_flavor_profile, writeonly_flavor_profile { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_abstract_value extends immutable_stringable, readonly_abstract_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface immutable_action extends immutable_analysis_result, immutable_origin, readonly_action { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_action_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.graphs.graph; 7 | 8 | public interface immutable_action_context extends immutable_value, readonly_action_context { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_analysis_result extends immutable_origin, readonly_analysis_result { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_analyzable extends immutable_origin, readonly_analyzable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_construct extends immutable_data, immutable_origin, readonly_construct { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_declaration extends immutable_analyzable, readonly_declaration { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_execution_context extends immutable_value, readonly_execution_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_flavor_profile extends immutable_reference_equality, readonly_flavor_profile { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_language_settings extends immutable_value, readonly_language_settings { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_origin extends immutable_data, immutable_reference_equality, immutable_stringable, readonly_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_principal_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/principal_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_principal_type extends immutable_type, readonly_principal_type { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/immutable_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface immutable_type extends immutable_abstract_value, immutable_data, immutable_stringable, immutable_reference_equality, immutable_type_id, readonly_type { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/kind.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/kind.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface kind extends deeply_immutable_data, deeply_immutable_reference_equality, deeply_immutable_stringable { 8 | simple_name name(); 9 | flavor_profile default_profile(); 10 | boolean is_namespace(); 11 | boolean supports_constructors(); 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface language_settings extends value, readonly_language_settings, writeonly_language_settings { 8 | access_modifier get_default_type_access(kind the_kind); 9 | access_modifier get_default_variable_access(kind the_kind); 10 | access_modifier get_default_procedure_access(kind the_kind); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/literal.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/literal.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface literal extends deeply_immutable_stringable, deeply_immutable_data { 8 | value_type the_value(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/modifier_kind.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/modifier_kind.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface modifier_kind extends identifier, deeply_immutable_reference_equality { 8 | simple_name name(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/notification.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/notification.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.text_fragment; 7 | import ideal.library.messages.log_message; 8 | 9 | public interface notification extends log_message { 10 | string message(); 11 | origin origin(); 12 | readonly_list secondary(); 13 | text_fragment render_text(boolean prefix_with_source); 14 | void report(); 15 | } 16 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface origin extends data, reference_equality, stringable, readonly_origin, writeonly_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/principal_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/principal_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface principal_type extends type, readonly_principal_type, writeonly_principal_type { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_abstract_value extends readonly_data, readonly_stringable, any_abstract_value { 8 | type type_bound(); 9 | boolean is_parametrizable(); 10 | action to_action(origin the_origin); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | import javax.annotation.Nullable; 9 | 10 | public interface readonly_action extends readonly_analysis_result, readonly_origin, readonly_data, any_action { 11 | abstract_value result(); 12 | @Nullable declaration get_declaration(); 13 | boolean has_side_effects(); 14 | } 15 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_action_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.graphs.graph; 7 | 8 | public interface readonly_action_context extends readonly_value, any_action_context { 9 | language_settings settings(); 10 | graph type_graph(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_analysis_result extends readonly_origin, readonly_data, any_analysis_result { 8 | action to_action(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_analyzable extends readonly_origin, any_analyzable { 8 | boolean has_errors(); 9 | analyzable specialize(specialization_context context, principal_type new_parent); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_construct extends readonly_data, readonly_origin, any_construct { 8 | readonly_list children(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_declaration extends readonly_analyzable, any_declaration { 8 | principal_type declared_in_type(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_execution_context extends readonly_value, any_execution_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_flavor_profile extends readonly_data, readonly_reference_equality, any_flavor_profile { 8 | type_flavor default_flavor(); 9 | boolean supports(type_flavor flavor); 10 | type_flavor map(type_flavor from); 11 | immutable_list supported_flavors(); 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_language_settings extends readonly_value, any_language_settings { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/readonly_origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | import javax.annotation.Nullable; 8 | 9 | public interface readonly_origin extends readonly_data, readonly_reference_equality, readonly_stringable, any_origin { 10 | @Nullable origin deeper_origin(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/specialization_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/specialization_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | import javax.annotation.Nullable; 8 | 9 | public interface specialization_context extends deeply_immutable_data, deeply_immutable_stringable { 10 | @Nullable abstract_value lookup(principal_type key); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/subtype_tag.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/subtype_tag.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface subtype_tag extends deeply_immutable_data, deeply_immutable_reference_equality, deeply_immutable_stringable { 8 | simple_name name(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/token.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/token.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface token extends deeply_immutable_data, origin, deeply_immutable_stringable { 8 | token_type type(); 9 | payload_type payload(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/token_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/token_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface token_type extends identifier, deeply_immutable_reference_equality { 8 | string name(); 9 | string symbol_identifier(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface type extends abstract_value, data, stringable, reference_equality, type_id, readonly_type, writeonly_type { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/type_flavor.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type_flavor.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface type_flavor extends modifier_kind, identifier, deeply_immutable_reference_equality { 8 | simple_name name(); 9 | flavor_profile get_profile(); 10 | immutable_list get_superflavors(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_abstract_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/abstract_value.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_abstract_value extends writeonly_stringable, any_abstract_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_action.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface writeonly_action extends writeonly_analysis_result, writeonly_origin, any_action { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_action_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/action_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.graphs.graph; 7 | 8 | public interface writeonly_action_context extends writeonly_value, any_action_context { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_analysis_result.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analysis_result.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_analysis_result extends writeonly_origin, any_analysis_result { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_analyzable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/analyzable.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_analyzable extends writeonly_origin, any_analyzable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_construct.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/construct.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_construct extends writeonly_data, writeonly_origin, any_construct { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_declaration.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/declaration.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_declaration extends writeonly_analyzable, any_declaration { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_execution_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/execution_context.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_execution_context extends writeonly_value, any_execution_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_flavor_profile.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/flavor_profile.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_flavor_profile extends writeonly_reference_equality, any_flavor_profile { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_language_settings.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/language_settings.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_language_settings extends writeonly_value, any_language_settings { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_origin.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/origin.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_origin extends writeonly_data, writeonly_reference_equality, writeonly_stringable, any_origin { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_principal_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/principal_type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_principal_type extends writeonly_type, any_principal_type { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/development/elements/writeonly_type.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from development/elements/type.i 2 | 3 | package ideal.development.elements; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.reflections.*; 7 | 8 | public interface writeonly_type extends writeonly_abstract_value, writeonly_data, writeonly_stringable, writeonly_reference_equality, writeonly_type_id, any_type { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/calendars/gregorian_day.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/calendars.i 2 | 3 | package ideal.library.calendars; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface gregorian_day extends deeply_immutable_data, deeply_immutable_equality_comparable, deeply_immutable_stringable { 8 | Integer year(); 9 | gregorian_month month(); 10 | Integer day(); 11 | gregorian_day add_days(Integer num_days); 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/calendars/gregorian_month.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/calendars.i 2 | 3 | package ideal.library.calendars; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface gregorian_month extends deeply_immutable_data, deeply_immutable_equality_comparable, deeply_immutable_stringable { 8 | int ordinal(); 9 | Integer index_base_1(); 10 | Integer min_days(); 11 | Integer max_days(); 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/any_input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_input extends any_closeable, any_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/any_output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_output extends any_closeable, any_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/any_syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_syncable extends any_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/deeply_immutable_input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_input extends deeply_immutable_closeable, deeply_immutable_syncable, immutable_input { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/deeply_immutable_output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_output extends deeply_immutable_closeable, deeply_immutable_syncable, immutable_output { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/deeply_immutable_syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_syncable extends deeply_immutable_value, immutable_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/immutable_input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_input extends immutable_closeable, immutable_syncable, readonly_input { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/immutable_output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_output extends immutable_closeable, immutable_syncable, readonly_output { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/immutable_syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_syncable extends immutable_value, readonly_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface input extends closeable, syncable, readonly_input, writeonly_input { 8 | immutable_list read(Integer max); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface output extends closeable, syncable, readonly_output, writeonly_output { 8 | void write(element e); 9 | void write_all(readonly_list c); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/readonly_input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_input extends readonly_closeable, readonly_syncable, any_input { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/readonly_output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_output extends readonly_closeable, readonly_syncable, any_output { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/readonly_syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_syncable extends readonly_value, any_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface syncable extends value, readonly_syncable, writeonly_syncable { 8 | void sync(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/writeonly_input.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_input extends writeonly_closeable, writeonly_syncable, any_input { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/writeonly_output.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_output extends writeonly_closeable, writeonly_syncable, any_output { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/channels/writeonly_syncable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/channels.i 2 | 3 | package ideal.library.channels; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_syncable extends writeonly_value, any_syncable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/characters/radixes.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/characters.i 2 | 3 | package ideal.library.characters; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public class radixes { 8 | public static final Integer MINIMUM_RADIX = 2; 9 | public static final Integer DEFAULT_RADIX = 10; 10 | public static final Integer MAXIMUM_RADIX = 36; 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_closeable extends any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_collection extends any_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_comparable extends any_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_composite_value extends any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_data extends any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_dictionary.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_dictionary extends any_collection> { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_equality_comparable extends any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_lifespan extends any_closeable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_list extends any_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_ordered_set extends any_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_reference extends any_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_reference_equality extends any_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_set extends any_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_stringable extends any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/any_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface any_value extends any_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface closeable extends value, readonly_closeable, writeonly_closeable { 6 | void close(); 7 | void teardown(); 8 | } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface collection extends composite_value, readonly_collection, writeonly_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface comparable extends equality_comparable, readonly_comparable, writeonly_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface composite_value extends value, readonly_composite_value, writeonly_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface data extends value, readonly_data, writeonly_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_closeable extends deeply_immutable_value, immutable_closeable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_collection extends deeply_immutable_composite_value, immutable_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_comparable extends deeply_immutable_equality_comparable, immutable_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_composite_value extends deeply_immutable_value, immutable_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_data extends deeply_immutable_value, immutable_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_dictionary.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_dictionary extends deeply_immutable_collection>, immutable_dictionary { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_entity extends immutable_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_equality_comparable extends deeply_immutable_value, immutable_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_lifespan extends deeply_immutable_closeable, immutable_lifespan { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_list extends deeply_immutable_collection, immutable_list { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_ordered_set extends deeply_immutable_collection, deeply_immutable_list, deeply_immutable_set, immutable_ordered_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_reference extends deeply_immutable_entity, immutable_reference { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_reference_equality extends deeply_immutable_equality_comparable, immutable_reference_equality { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_set extends deeply_immutable_collection, immutable_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_stringable extends deeply_immutable_value, immutable_stringable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/deeply_immutable_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface deeply_immutable_value extends deeply_immutable_entity, immutable_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface entity extends readonly_entity, writeonly_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/enum_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface enum_data extends deeply_immutable_data, deeply_immutable_reference_equality, deeply_immutable_stringable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface equality_comparable extends value, readonly_equality_comparable, writeonly_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/equivalence_relation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface equivalence_relation extends relation { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/equivalence_with_hash.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface equivalence_with_hash extends equivalence_relation { 6 | Integer hash(element the_element); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/function0.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface function0 extends procedure0, deeply_immutable_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/function1.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface function1 extends procedure1, deeply_immutable_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/function2.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface function2 extends procedure2, deeply_immutable_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/identifier.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface identifier extends deeply_immutable_data, deeply_immutable_stringable, deeply_immutable_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_closeable extends immutable_value, readonly_closeable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_collection extends immutable_composite_value, readonly_collection { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_comparable extends immutable_equality_comparable, readonly_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_composite_value extends immutable_value, readonly_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_data extends immutable_value, readonly_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_dictionary.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_dictionary extends immutable_collection>, readonly_dictionary { 6 | immutable_set keys(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_entity extends readonly_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_equality_comparable extends immutable_value, readonly_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_lifespan extends immutable_closeable, readonly_lifespan { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_list extends immutable_collection, readonly_list { 6 | immutable_list reversed(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_ordered_set extends immutable_collection, immutable_list, immutable_set, readonly_ordered_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_reference extends immutable_entity, readonly_reference { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_reference_equality extends immutable_equality_comparable, readonly_reference_equality { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_set extends immutable_collection, readonly_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_stringable extends immutable_value, readonly_stringable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/immutable_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface immutable_value extends immutable_entity, readonly_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface lifespan extends closeable, readonly_lifespan, writeonly_lifespan { 6 | void register(closeable the_closeable); 7 | lifespan make_sub_lifespan(); 8 | } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface list extends collection, readonly_list, writeonly_list { 6 | reference at(Integer index); 7 | void append(element the_element); 8 | void append_all(readonly_list the_list); 9 | void prepend(element the_element); 10 | element remove_last(); 11 | element remove_at(Integer index); 12 | void sort(order the_order); 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/order.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface order extends function2 { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface ordered_set extends collection, readonly_ordered_set, writeonly_ordered_set { 6 | void append(element the_element); 7 | void append_all(readonly_list the_list); 8 | void prepend(element the_element); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/predicate.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface predicate extends function1 { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/procedure0.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface procedure0 extends immutable_value, equality_comparable { 6 | R call(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/procedure1.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface procedure1 extends immutable_value, equality_comparable { 6 | R call(A0 first); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/procedure2.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface procedure2 extends immutable_value, equality_comparable { 6 | R call(A0 first, A1 second); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/range.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface range extends deeply_immutable_list, deeply_immutable_equality_comparable { 6 | Integer begin(); 7 | Integer end(); 8 | range skip(Integer count); 9 | range slice(Integer begin, Integer end); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_closeable extends readonly_value, any_closeable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_collection extends readonly_composite_value, any_collection { 6 | Integer size(); 7 | boolean is_empty(); 8 | boolean is_not_empty(); 9 | immutable_list elements(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_comparable extends readonly_equality_comparable, any_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_composite_value extends readonly_value, any_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_data extends readonly_value, any_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_entity extends any_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_equality_comparable extends readonly_value, any_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_lifespan extends readonly_closeable, any_lifespan { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_ordered_set extends readonly_collection, readonly_list, readonly_set, any_ordered_set { 6 | immutable_ordered_set frozen_copy(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_reference extends readonly_entity, any_reference { 6 | value_type get(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_reference_equality extends readonly_equality_comparable, any_reference_equality { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_set extends readonly_collection, any_set { 6 | boolean contains(element the_element); 7 | immutable_set frozen_copy(); 8 | } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_stringable extends readonly_value, any_stringable { 6 | string to_string(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/readonly_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface readonly_value extends readonly_entity, any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface reference extends entity, readonly_reference, writeonly_reference { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface reference_equality extends equality_comparable, readonly_reference_equality, writeonly_reference_equality { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/relation.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface relation extends function2 { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface set extends collection, readonly_set, writeonly_set { 6 | void add(element the_element); 7 | void add_all(readonly_collection the_collection); 8 | boolean remove(element the_element); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/sign.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public enum sign implements comparable, enum_data { 6 | less, 7 | equal, 8 | greater; 9 | public string to_string() { 10 | return new ideal.runtime.elements.base_string(toString()); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/string.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface string extends deeply_immutable_list, deeply_immutable_stringable, deeply_immutable_data, deeply_immutable_equality_comparable, ideal.library.texts.string_text_node, ideal.library.formats.json_string { 6 | @Override string skip(Integer count); 7 | @Override string slice(Integer begin, Integer end); 8 | } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface stringable extends value, readonly_stringable, writeonly_stringable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface value extends entity, readonly_value, writeonly_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_closeable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_closeable extends writeonly_value, any_closeable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_collection.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_collection extends writeonly_composite_value, any_collection { 6 | void clear(); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_comparable extends writeonly_equality_comparable, any_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_composite_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_composite_value extends writeonly_value, any_composite_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_data extends writeonly_value, any_data { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_dictionary.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_dictionary extends writeonly_collection>, any_dictionary { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_entity.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_entity extends any_entity { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_equality_comparable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_equality_comparable extends writeonly_value, any_equality_comparable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_lifespan.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_lifespan extends writeonly_closeable, any_lifespan { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_list extends writeonly_collection, any_list { 6 | void set(Integer index, element value); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_ordered_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_ordered_set extends writeonly_collection, any_ordered_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_reference.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_reference extends writeonly_entity, any_reference { 6 | void set(value_type new_value); 7 | } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_reference_equality.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_reference_equality extends writeonly_equality_comparable, any_reference_equality { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_set.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_set extends writeonly_collection, any_set { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_stringable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_stringable extends writeonly_value, any_stringable { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/elements/writeonly_value.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/elements.i 2 | 3 | package ideal.library.elements; 4 | 5 | public interface writeonly_value extends writeonly_entity, any_value { } 6 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/any_json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_json_array extends any_json_data, any_list { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/any_json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_json_data extends any_data, any_equality_comparable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/any_json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_json_object extends any_json_data, any_dictionary { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/deeply_immutable_json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_json_array extends deeply_immutable_json_data, deeply_immutable_list, immutable_json_array { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/deeply_immutable_json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_json_data extends deeply_immutable_data, deeply_immutable_equality_comparable, immutable_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/deeply_immutable_json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_json_object extends deeply_immutable_json_data, deeply_immutable_dictionary, immutable_json_object { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/immutable_json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_json_array extends immutable_json_data, immutable_list, readonly_json_array { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/immutable_json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_json_data extends immutable_data, immutable_equality_comparable, readonly_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/immutable_json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_json_object extends immutable_json_data, immutable_dictionary, readonly_json_object { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_array extends json_data, list, readonly_json_array, writeonly_json_array { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_boolean.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_boolean extends deeply_immutable_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_data extends data, equality_comparable, readonly_json_data, writeonly_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_null.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_null extends deeply_immutable_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_number.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_number extends deeply_immutable_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_object extends json_data, dictionary, readonly_json_object, writeonly_json_object { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/json_string.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface json_string extends deeply_immutable_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/readonly_json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_json_array extends readonly_json_data, readonly_list, any_json_array { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/readonly_json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_json_data extends readonly_data, readonly_equality_comparable, any_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/readonly_json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_json_object extends readonly_json_data, readonly_dictionary, any_json_object { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/writeonly_json_array.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_json_array extends writeonly_json_data, writeonly_list, any_json_array { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/writeonly_json_data.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_json_data extends writeonly_data, writeonly_equality_comparable, any_json_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/formats/writeonly_json_object.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/formats.i 2 | 3 | package ideal.library.formats; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_json_object extends writeonly_json_data, writeonly_dictionary, any_json_object { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/any_graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_graph extends any_data { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/deeply_immutable_graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_graph extends deeply_immutable_data, immutable_graph { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface graph extends data, readonly_graph, writeonly_graph { 8 | void add_edge(vertice_type from, vertice_type to, edge_type the_source); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/immutable_graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_graph extends immutable_data, readonly_graph { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/readonly_graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_graph extends readonly_data, any_graph { 8 | readonly_set vertices(); 9 | immutable_set adjacent(vertice_type from); 10 | boolean introduces_cycle(vertice_type from, vertice_type to); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/graphs/writeonly_graph.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/graphs.i 2 | 3 | package ideal.library.graphs; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_graph extends writeonly_data, any_graph { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/messages/log_level.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/messages.i 2 | 3 | package ideal.library.messages; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | 8 | public enum log_level implements enum_data { 9 | EMERGENCY, 10 | ALERT, 11 | CRITICAL, 12 | ERROR, 13 | WARNING, 14 | NOTICE, 15 | INFORMATIONAL, 16 | DEBUG, 17 | TRACE; 18 | public string to_string() { 19 | return new ideal.runtime.elements.base_string(toString()); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/messages/log_message.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/messages.i 2 | 3 | package ideal.library.messages; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | 8 | public interface log_message extends message { 9 | log_level level(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/messages/message.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/messages.i 2 | 3 | package ideal.library.messages; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | 8 | public interface message extends deeply_immutable_data, deeply_immutable_stringable { 9 | text_fragment to_text(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/patterns/matcher.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/patterns.i 2 | 3 | package ideal.library.patterns; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface matcher extends pattern { 8 | result_type parse(readonly_list the_list); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/patterns/reversible_pattern.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/patterns.i 2 | 3 | package ideal.library.patterns; 4 | 5 | import ideal.library.elements.*; 6 | 7 | import javax.annotation.Nullable; 8 | 9 | public interface reversible_pattern extends pattern { 10 | @Nullable range find_last(readonly_list the_list, @Nullable Integer end_index); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_entity_wrapper extends any_stringable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_reference_wrapper extends any_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_type_id extends any_stringable, any_equality_comparable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_value_wrapper extends any_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_variable_context extends any_value { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/any_variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_variable_id extends any_stringable, any_equality_comparable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_entity_wrapper extends deeply_immutable_stringable, immutable_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_reference_wrapper extends deeply_immutable_entity_wrapper, immutable_reference_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_type_id extends deeply_immutable_stringable, deeply_immutable_equality_comparable, immutable_type_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_value_wrapper extends deeply_immutable_entity_wrapper, immutable_value_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_variable_context extends deeply_immutable_value, immutable_variable_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/deeply_immutable_variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_variable_id extends deeply_immutable_stringable, deeply_immutable_equality_comparable, immutable_variable_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface entity_wrapper extends stringable, readonly_entity_wrapper, writeonly_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_entity_wrapper extends immutable_stringable, readonly_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_reference_wrapper extends immutable_entity_wrapper, readonly_reference_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_type_id extends immutable_stringable, immutable_equality_comparable, readonly_type_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_value_wrapper extends immutable_entity_wrapper, readonly_value_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_variable_context extends immutable_value, readonly_variable_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/immutable_variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_variable_id extends immutable_stringable, immutable_equality_comparable, readonly_variable_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_entity_wrapper extends readonly_stringable, any_entity_wrapper { 8 | type_id type_bound(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_reference_wrapper extends readonly_entity_wrapper, any_reference_wrapper { 8 | type_id value_type_bound(); 9 | value_wrapper get(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_type_id extends readonly_stringable, readonly_equality_comparable, any_type_id { 8 | identifier short_name(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_value_wrapper extends readonly_entity_wrapper, any_value_wrapper { 8 | Object unwrap(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_variable_context extends readonly_value, any_variable_context { 8 | value_wrapper get_var(variable_id key); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/readonly_variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_variable_id extends readonly_stringable, readonly_equality_comparable, any_variable_id { 8 | identifier short_name(); 9 | type_id value_type(); 10 | type_id reference_type(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface reference_wrapper extends entity_wrapper, readonly_reference_wrapper, writeonly_reference_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface type_id extends stringable, equality_comparable, readonly_type_id, writeonly_type_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface value_wrapper extends entity_wrapper, readonly_value_wrapper, writeonly_value_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface variable_context extends value, readonly_variable_context, writeonly_variable_context { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface variable_id extends stringable, equality_comparable, readonly_variable_id, writeonly_variable_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_entity_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_entity_wrapper extends writeonly_stringable, any_entity_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_reference_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_reference_wrapper extends writeonly_entity_wrapper, any_reference_wrapper { 8 | void init(value_wrapper the_value); 9 | void set(value_wrapper the_value); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_type_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_type_id extends writeonly_stringable, writeonly_equality_comparable, any_type_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_value_wrapper.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_value_wrapper extends writeonly_entity_wrapper, any_value_wrapper { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_variable_context.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_variable_context extends writeonly_value, any_variable_context { 8 | void put_var(variable_id key, value_wrapper value); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/reflections/writeonly_variable_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/reflections.i 2 | 3 | package ideal.library.reflections; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_variable_id extends writeonly_stringable, writeonly_equality_comparable, any_variable_id { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/access_option.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface access_option extends deeply_immutable_data, deeply_immutable_stringable { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/any_resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface any_resource extends any_value, any_stringable { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/any_resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface any_resource_catalog extends any_resource> { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/deeply_immutable_resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface deeply_immutable_resource extends deeply_immutable_value, deeply_immutable_stringable, immutable_resource { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/deeply_immutable_resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface deeply_immutable_resource_catalog extends deeply_immutable_resource>, immutable_resource_catalog { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/extension.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface extension extends deeply_immutable_data, deeply_immutable_stringable { 9 | string dot_name(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/immutable_resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface immutable_resource extends immutable_value, immutable_stringable, readonly_resource { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/immutable_resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface immutable_resource_catalog extends immutable_resource>, readonly_resource_catalog { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/readonly_resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface readonly_resource extends readonly_value, readonly_stringable, any_resource { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/readonly_resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface readonly_resource_catalog extends readonly_resource>, any_resource_catalog { 9 | resource_identifier id(); 10 | resource_identifier resolve(string name); 11 | resource_identifier resolve(string name, extension ext); 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface resource extends value, stringable, readonly_resource, writeonly_resource { 9 | reference content(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface resource_catalog extends resource>, readonly_resource_catalog, writeonly_resource_catalog { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/writeonly_resource.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface writeonly_resource extends writeonly_value, writeonly_stringable, any_resource { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/resources/writeonly_resource_catalog.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/resources.i 2 | 3 | package ideal.library.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.formats.json_data; 7 | 8 | public interface writeonly_resource_catalog extends writeonly_resource>, any_resource_catalog { } 9 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/attribute_fragment.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface attribute_fragment extends text_fragment { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/attribute_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface attribute_id extends identifier { 8 | text_namespace get_namespace(); 9 | string short_name(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/element_id.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface element_id extends identifier { 8 | text_namespace get_namespace(); 9 | string short_name(); 10 | } 11 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/list_attribute_fragment.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface list_attribute_fragment extends attribute_fragment { 8 | immutable_list fragments(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/list_text_node.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface list_text_node extends text_fragment { 8 | immutable_list nodes(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/special_text.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface special_text extends text_node, attribute_fragment, deeply_immutable_reference_equality { 8 | string name(); 9 | string to_plain_text(); 10 | string to_markup(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/string_text_node.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface string_text_node extends text_node, attribute_fragment { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/text_element.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | import javax.annotation.Nullable; 8 | 9 | public interface text_element extends text_node { 10 | element_id get_id(); 11 | immutable_dictionary attributes(); 12 | @Nullable text_fragment children(); 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/text_fragment.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface text_fragment extends deeply_immutable_data, deeply_immutable_stringable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/text_namespace.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface text_namespace extends identifier { 8 | string short_name(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/library/texts/text_node.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from library/texts.i 2 | 3 | package ideal.library.texts; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface text_node extends text_fragment { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/any_has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface any_has_equivalence extends any_equality_comparable { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/deeply_immutable_has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface deeply_immutable_has_equivalence extends deeply_immutable_equality_comparable, immutable_has_equivalence { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface has_equivalence extends equality_comparable, readonly_has_equivalence, writeonly_has_equivalence { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/immutable_has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface immutable_has_equivalence extends immutable_equality_comparable, readonly_has_equivalence { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/readonly_has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface readonly_has_equivalence extends readonly_equality_comparable, any_has_equivalence { 8 | equivalence_relation equivalence(); 9 | } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/elements/writeonly_has_equivalence.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/elements/has_equivalence.i 2 | 3 | package ideal.runtime.elements; 4 | 5 | import ideal.library.elements.*; 6 | 7 | public interface writeonly_has_equivalence extends writeonly_equality_comparable, any_has_equivalence { } 8 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/formats/json_array_impl.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/formats/json_array_impl.i 2 | 3 | package ideal.runtime.formats; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.characters.*; 7 | import ideal.library.formats.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.characters.*; 10 | 11 | public class json_array_impl extends base_list implements json_array { 12 | public json_array_impl() { } 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/formats/json_object_impl.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/formats/json_object_impl.i 2 | 3 | package ideal.runtime.formats; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.characters.*; 7 | import ideal.library.formats.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.characters.*; 10 | 11 | public class json_object_impl extends hash_dictionary implements json_object { 12 | public json_object_impl() { } 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/formats/json_object_list.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/formats/json_object_list.i 2 | 3 | package ideal.runtime.formats; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.characters.*; 7 | import ideal.library.formats.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.characters.*; 10 | 11 | public class json_object_list extends list_dictionary implements json_object { 12 | public json_object_list() { } 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/any_displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface any_displayable extends any_value { } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/deeply_immutable_displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface deeply_immutable_displayable extends deeply_immutable_value, immutable_displayable { } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface displayable extends value, readonly_displayable, writeonly_displayable { } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/immutable_displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface immutable_displayable extends immutable_value, readonly_displayable { } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/readonly_displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface readonly_displayable extends readonly_value, any_displayable { 12 | string display(); 13 | } 14 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/logs/writeonly_displayable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/logs/displayable.i 2 | 3 | package ideal.runtime.logs; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.texts.*; 7 | import ideal.library.messages.*; 8 | import ideal.runtime.elements.*; 9 | import ideal.runtime.texts.*; 10 | 11 | public interface writeonly_displayable extends writeonly_value, any_displayable { } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/any_validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface any_validatable extends any_value { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/deeply_immutable_validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface deeply_immutable_validatable extends deeply_immutable_value, immutable_validatable { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/immutable_validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface immutable_validatable extends immutable_value, readonly_validatable { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/readonly_validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface readonly_validatable extends readonly_value, any_validatable { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface validatable extends value, readonly_validatable, writeonly_validatable { 10 | void validate(); 11 | } 12 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/patterns/writeonly_validatable.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/patterns/validatable.i 2 | 3 | package ideal.runtime.patterns; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.patterns.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface writeonly_validatable extends writeonly_value, any_validatable { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/resources/any_resource_store.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/resources/resource_store.i 2 | 3 | package ideal.runtime.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.resources.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface any_resource_store extends any_value { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/resources/deeply_immutable_resource_store.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/resources/resource_store.i 2 | 3 | package ideal.runtime.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.resources.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface deeply_immutable_resource_store extends deeply_immutable_value, immutable_resource_store { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/resources/immutable_resource_store.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/resources/resource_store.i 2 | 3 | package ideal.runtime.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.resources.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface immutable_resource_store extends immutable_value, readonly_resource_store { } 10 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/resources/make_catalog_option.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/resources/make_catalog_option.i 2 | 3 | package ideal.runtime.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.resources.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public class make_catalog_option extends debuggable implements access_option { 10 | public static final make_catalog_option instance = new make_catalog_option(); 11 | private make_catalog_option() { } 12 | } 13 | -------------------------------------------------------------------------------- /bootstrapped/ideal/runtime/resources/writeonly_resource_store.java: -------------------------------------------------------------------------------- 1 | // Autogenerated from runtime/resources/resource_store.i 2 | 3 | package ideal.runtime.resources; 4 | 5 | import ideal.library.elements.*; 6 | import ideal.library.resources.*; 7 | import ideal.runtime.elements.*; 8 | 9 | public interface writeonly_resource_store extends writeonly_value, any_resource_store { } 10 | -------------------------------------------------------------------------------- /development/comments/documentation.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface documentation { 8 | extends readonly data; 9 | 10 | text_fragment or null section(documentation_section the_section); 11 | } 12 | -------------------------------------------------------------------------------- /development/comments/documentation_section.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | enum documentation_section { 8 | ALL; 9 | SUMMARY; 10 | -- DESCRIPTION; 11 | -- COPYRIGHT; 12 | -- LICENSE; 13 | } 14 | -------------------------------------------------------------------------------- /development/components/components.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Declaration of ideal system components. 8 | package components { 9 | implicit import ideal.library.elements; 10 | implicit import ideal.development.elements; 11 | 12 | interface printer; 13 | interface transformer; 14 | } 15 | -------------------------------------------------------------------------------- /development/components/transformer.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface transformer { 8 | extends value; 9 | 10 | construct transform(construct c); 11 | } 12 | -------------------------------------------------------------------------------- /development/constructs/annotation_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Annotation, such as |modifier_construct| or |comment_construct|. 8 | interface annotation_construct { 9 | extends construct; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/case_clause_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class case_clause_construct { 8 | readonly list[construct] cases; 9 | readonly list[construct] body; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/conditional_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class conditional_construct { 8 | construct cond_expr; 9 | construct then_expr; 10 | construct or null else_expr; 11 | boolean is_statement; 12 | } 13 | -------------------------------------------------------------------------------- /development/constructs/constraint_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class constraint_construct { 8 | constraint_category the_constraint_category; 9 | construct expr; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/empty_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class empty_construct { 8 | } 9 | -------------------------------------------------------------------------------- /development/constructs/flavor_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class flavor_construct { 8 | type_flavor flavor; 9 | construct expr; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/grammar_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class grammar_construct { 8 | readonly list[annotation_construct] annotations; 9 | action_name name; 10 | readonly list[construct] body; 11 | 12 | override string to_string => utilities.describe(this, name); 13 | } 14 | -------------------------------------------------------------------------------- /development/constructs/import_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class import_construct { 8 | final readonly list[annotation_construct] annotations; 9 | final construct type_construct; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/jump_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | implicit import ideal.development.jumps; 8 | 9 | meta_construct class jump_construct { 10 | jump_category the_jump_category; 11 | } 12 | -------------------------------------------------------------------------------- /development/constructs/literal_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class literal_construct { 8 | literal the_literal; 9 | } 10 | -------------------------------------------------------------------------------- /development/constructs/loop_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class loop_construct { 8 | construct body; 9 | } 10 | -------------------------------------------------------------------------------- /development/constructs/name_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class name_construct { 8 | implements stringable; 9 | 10 | action_name the_name; 11 | 12 | override string to_string => utilities.describe(this, the_name); 13 | } 14 | -------------------------------------------------------------------------------- /development/constructs/parameter_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class parameter_construct { 8 | construct main; 9 | readonly list[construct] parameters; 10 | grouping_type grouping; 11 | 12 | override string to_string => utilities.describe(this, main); 13 | } 14 | -------------------------------------------------------------------------------- /development/constructs/resolve_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class resolve_construct { 8 | construct qualifier; 9 | action_name the_name; 10 | 11 | override string to_string => utilities.describe(this, the_name); 12 | } 13 | -------------------------------------------------------------------------------- /development/constructs/return_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class return_construct { 8 | construct or null the_expression; 9 | } 10 | -------------------------------------------------------------------------------- /development/constructs/supertype_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class supertype_construct { 8 | readonly list[annotation_construct] annotations; 9 | type_flavor or null subtype_flavor; 10 | subtype_tag tag; 11 | readonly list[construct] type_constructs; 12 | } 13 | -------------------------------------------------------------------------------- /development/constructs/switch_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class switch_construct { 8 | construct expression; 9 | readonly list[case_clause_construct] clauses; 10 | } 11 | -------------------------------------------------------------------------------- /development/constructs/type_announcement_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class type_announcement_construct { 8 | readonly list[annotation_construct] annotations; 9 | kind kind; 10 | action_name name; 11 | 12 | override string to_string => utilities.describe(this, name); 13 | } 14 | -------------------------------------------------------------------------------- /development/declarations/block_declaration.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Declaration of a block, such as a static block. 8 | interface block_declaration { 9 | extends declaration; 10 | 11 | annotation_set annotations; 12 | action get_body_action; 13 | } 14 | -------------------------------------------------------------------------------- /development/declarations/import_declaration.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Information encapsulated in an import declaration. 8 | interface import_declaration { 9 | extends declaration; 10 | 11 | annotation_set annotations; 12 | type get_type; 13 | boolean is_implicit; 14 | } 15 | -------------------------------------------------------------------------------- /development/declarations/named_declaration.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A declaration that has a name associated with it. 8 | interface named_declaration { 9 | extends declaration; 10 | 11 | action_name short_name; 12 | } 13 | -------------------------------------------------------------------------------- /development/declarations/procedure_category.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A category of a given procedure: method, constructor, or static method. 8 | enum procedure_category { 9 | CONSTRUCTOR; 10 | METHOD; 11 | STATIC; 12 | } 13 | -------------------------------------------------------------------------------- /development/declarations/type_parameter_declaration.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Declaration of a type parameter for an enclosing type. 8 | interface type_parameter_declaration { 9 | extends type_declaration; 10 | 11 | type variable_type; 12 | } 13 | -------------------------------------------------------------------------------- /development/declarations/variable_category.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A category associated with a variable, such as instance field, static field, 8 | --- loval variable, or an wnum value declaration. 9 | enum variable_category { 10 | LOCAL; 11 | INSTANCE; 12 | STATIC; 13 | ENUM_VALUE; 14 | } 15 | -------------------------------------------------------------------------------- /development/elements/action_name.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- The parent type of identifiers used in ideal. 8 | --- Usually it's a |simple_name|. 9 | interface action_name { 10 | extends identifier, reference_equality; 11 | } 12 | -------------------------------------------------------------------------------- /development/elements/analysis_result.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- The result of semantic analysis, typically an |action|. 8 | interface analysis_result { 9 | extends origin, readonly data; 10 | 11 | action to_action; 12 | } 13 | -------------------------------------------------------------------------------- /development/elements/construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Constructs are the abstract syntax tree (AST) data structures used in ideal. 8 | interface construct { 9 | extends data, origin; 10 | 11 | readonly list[construct] children; 12 | } 13 | -------------------------------------------------------------------------------- /development/elements/execution_context.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Describes the state of the interpeter, such as stack state. 8 | interface execution_context { 9 | extends value; 10 | } 11 | -------------------------------------------------------------------------------- /development/elements/language_settings.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface language_settings { 8 | access_modifier get_default_type_access(kind the_kind); 9 | 10 | access_modifier get_default_variable_access(kind the_kind); 11 | 12 | access_modifier get_default_procedure_access(kind the_kind); 13 | } 14 | -------------------------------------------------------------------------------- /development/elements/literal.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface literal[value value_type] { 8 | extends stringable, deeply_immutable data; 9 | 10 | value_type the_value; 11 | } 12 | -------------------------------------------------------------------------------- /development/elements/modifier_kind.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A kind of modifier, such as |public| or |final|. 8 | interface modifier_kind { 9 | extends identifier, reference_equality; 10 | 11 | simple_name name; 12 | -- TODO: boolean is_parametrizable(); 13 | } 14 | -------------------------------------------------------------------------------- /development/elements/subtype_tag.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A subtype tag, such as |subtypes|, |extends| and |implements|. 8 | interface subtype_tag { 9 | extends deeply_immutable data, reference_equality, stringable; 10 | 11 | simple_name name; 12 | } 13 | -------------------------------------------------------------------------------- /development/flags/flags.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Flags for the create applications. 8 | package flags { 9 | implicit import ideal.library.elements; 10 | implicit import ideal.development.elements; 11 | 12 | class create_flags; 13 | namespace debug; 14 | } 15 | -------------------------------------------------------------------------------- /development/futures/future.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A |future| encapsulates the result of a delayed computation. 8 | interface future[covariant value element] { 9 | boolean is_done; 10 | element or null value; 11 | observe(operation observer, lifespan the_lifespan); 12 | } 13 | -------------------------------------------------------------------------------- /development/futures/operation.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- An operation (a.k.a. procedure or callback). 8 | interface operation { 9 | implements data, stringable; 10 | 11 | --- Schedule this operation for execution. 12 | schedule(); 13 | } 14 | -------------------------------------------------------------------------------- /development/grammars/nonterminal_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class nonterminal_construct { 8 | implements stringable; 9 | 10 | construct the_type; 11 | readonly list[name_construct] the_names; 12 | 13 | override string to_string => utilities.describe(this, the_names.first); 14 | } 15 | -------------------------------------------------------------------------------- /development/grammars/production_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class production_construct { 8 | implements stringable; 9 | 10 | name_construct the_name; 11 | readonly list[rule_construct] rules; 12 | 13 | override string to_string => utilities.describe(this, the_name); 14 | } 15 | -------------------------------------------------------------------------------- /development/grammars/rule_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class rule_construct { 8 | 9 | readonly list[term_construct] terms; 10 | construct or null actions; 11 | } 12 | -------------------------------------------------------------------------------- /development/grammars/term_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class term_construct { 8 | implements stringable; 9 | 10 | name_construct the_name; 11 | name_construct or null variable_name; 12 | term_repeat repeat; 13 | 14 | override string to_string => utilities.describe(this, the_name); 15 | } 16 | -------------------------------------------------------------------------------- /development/grammars/term_repeat.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | enum term_repeat { 8 | NO_REPEAT; 9 | ZERO_OR_MORE; 10 | ONE_OR_MORE; 11 | } 12 | -------------------------------------------------------------------------------- /development/grammars/terminal_construct.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | meta_construct class terminal_construct { 8 | implements stringable; 9 | 10 | construct the_type; 11 | readonly list[name_construct] the_names; 12 | 13 | override string to_string => utilities.describe(this, the_names.first); 14 | } 15 | -------------------------------------------------------------------------------- /development/jumps/jump_wrapper.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | abstract class jump_wrapper { 8 | implements entity_wrapper; 9 | 10 | override type type_bound => common_types.unreachable_type; 11 | } 12 | -------------------------------------------------------------------------------- /development/jumps/panic_value.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | public class panic_value { 8 | extends jump_wrapper; 9 | 10 | string message; 11 | 12 | panic_value(string message) { 13 | this.message = message; 14 | } 15 | 16 | override string to_string => "panic value: " ++ message; 17 | } 18 | -------------------------------------------------------------------------------- /development/jumps/returned_value.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | class returned_value { 8 | extends jump_wrapper; 9 | 10 | entity_wrapper result; 11 | 12 | returned_value(entity_wrapper result) { 13 | this.result = result; 14 | } 15 | 16 | override string to_string => "return value: " ++ result; 17 | } 18 | -------------------------------------------------------------------------------- /development/literals/literal_fragment.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | abstract class literal_fragment { 8 | extends debuggable; 9 | implements deeply_immutable data, stringable; 10 | } 11 | -------------------------------------------------------------------------------- /development/literals/string_fragment.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | class string_fragment { 8 | extends literal_fragment; 9 | 10 | the string; 11 | 12 | string_fragment(the string) { 13 | this.the_string = the_string; 14 | } 15 | 16 | override string to_string => the_string; 17 | } 18 | -------------------------------------------------------------------------------- /development/names/keyword.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Keywords used in the ideal system. 8 | class keyword { 9 | extends base_token_type; 10 | 11 | keyword(string name) { 12 | super(name, unicode_handler.instance.to_upper_case_all(name)); 13 | } 14 | 15 | simple_name keyword_name => simple_name.make(name); 16 | } 17 | -------------------------------------------------------------------------------- /development/names/punctuation_type.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | class punctuation_type { 8 | extends base_token_type; 9 | 10 | punctuation_type(string name, string the_symbol_identifier) { 11 | super(name, the_symbol_identifier); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /development/notifications/signal.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface signal { 8 | extends mutable analysis_result, deeply_immutable data, stringable; 9 | } 10 | -------------------------------------------------------------------------------- /development/scanners/scanner_element.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface scanner_element { 8 | extends data; 9 | 10 | set_config(the scanner_config); 11 | scan_state or null process(source_content source, nonnegative begin); 12 | } 13 | -------------------------------------------------------------------------------- /development/symbols/symbols.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Symbols generated by parser generator. 8 | package symbols { 9 | implicit import ideal.library.elements; 10 | implicit import ideal.runtime.elements; 11 | 12 | namespace base_symbols_map; 13 | } 14 | -------------------------------------------------------------------------------- /development/types/type_format.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | enum type_format { 8 | SHORT; 9 | ONE_PARENT; 10 | TWO_PARENTS; 11 | FULL; 12 | } 13 | -------------------------------------------------------------------------------- /development/types/value_printer.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Print the value of an abstract value or a type. 8 | -- TODO: implement printer that outputs text. 9 | -- TODO: rename value_printer, use a function instead. 10 | interface value_printer { 11 | extends data; 12 | 13 | string print_value(abstract_value the_value); 14 | } 15 | -------------------------------------------------------------------------------- /development/values/composite_wrapper.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface composite_wrapper { 8 | extends value_wrapper, variable_context, stringable; 9 | } 10 | -------------------------------------------------------------------------------- /development/values/data_value.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface data_value { 8 | extends abstract_value, value_wrapper, stringable; 9 | 10 | declaration or null get_declaration; 11 | } 12 | -------------------------------------------------------------------------------- /development/values/string_value.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface string_value { 8 | extends value_wrapper; 9 | 10 | override string unwrap(); 11 | } 12 | -------------------------------------------------------------------------------- /documentation/build-targets.txt: -------------------------------------------------------------------------------- 1 | Targets 2 | 3 | test: run unittests 4 | 5 | testall: run regression tests 6 | bin/reset-regression.sh: reset regression tests 7 | -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/common/procedure_id.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.showcase.coach.common; 10 | 11 | import ideal.library.elements.*; 12 | import ideal.runtime.elements.*; 13 | public interface procedure_id extends identifier { 14 | void init(Class this_class); 15 | } 16 | -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/resources/war-template/WEB-INF/appengine-generated/datastore-indexes-auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/resources/war-template/WEB-INF/appengine-generated/local_db.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynin/ideal/ee3f46d73a9fe15bfaf308becb18c61fb13abd21/experimental/coach/ideal/showcase/coach/resources/war-template/WEB-INF/appengine-generated/local_db.bin -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/resources/war-template/WEB-INF/appengine-web.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | coachdemo-209300 4 | demo 5 | java8 6 | true 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/resources/war-template/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynin/ideal/ee3f46d73a9fe15bfaf308becb18c61fb13abd21/experimental/coach/ideal/showcase/coach/resources/war-template/favicon.ico -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/resources/war-template/test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | Hello world! 5 |
6 | -------------------------------------------------------------------------------- /experimental/coach/ideal/showcase/coach/webforms/parameter_context.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.showcase.coach.webforms; 10 | 11 | import ideal.library.elements.*; 12 | import ideal.runtime.elements.*; 13 | public interface parameter_context { 14 | string get(identifier id); 15 | } 16 | -------------------------------------------------------------------------------- /experimental/jparser/HelloWorld.java: -------------------------------------------------------------------------------- 1 | public class HelloWorld { 2 | public static void main(String[] args) { 3 | System.out.println("Hello, World"); 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /experimental/mini/ideal/experimental/mini/test2.i: -------------------------------------------------------------------------------- 1 | (interface analysis_context 2 | (procedure (nullable string) add_action ( 3 | (variable (nullable string) name) 4 | )) 5 | ) 6 | 7 | (variable string foobar) 8 | (the string) 9 | -------------------------------------------------------------------------------- /jsource/ideal/development/actions/chainable_action.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.development.actions; 10 | 11 | import ideal.library.elements.*; 12 | import ideal.development.elements.*; 13 | 14 | public interface chainable_action extends action { 15 | } 16 | -------------------------------------------------------------------------------- /jsource/ideal/development/printers/printer_mode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.development.printers; 10 | 11 | /** 12 | * Controls how a |base_printer| formats output. 13 | */ 14 | public enum printer_mode { 15 | CURLY, 16 | STYLISH, 17 | XREF, 18 | DOC; 19 | } 20 | -------------------------------------------------------------------------------- /jsource/ideal/development/printers/publish_mode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.development.printers; 10 | 11 | /** 12 | * Controls how the filenames and links are generated when publishing. 13 | */ 14 | public enum publish_mode { 15 | FILE_MODE, 16 | WEBSITE_MODE; 17 | } 18 | -------------------------------------------------------------------------------- /jsource/ideal/development/transformers/annotation_category.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.development.transformers; 10 | 11 | import ideal.library.elements.*; 12 | 13 | enum annotation_category { 14 | TYPE, 15 | VARIABLE, 16 | PROCEDURE, 17 | TYPE_PARAMETER, 18 | IMPORT, 19 | BLOCK 20 | } 21 | -------------------------------------------------------------------------------- /jsource/ideal/machine/annotations/dont_display.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2014-2025 The Ideal Authors. All rights reserved. 3 | * 4 | * Use of this source code is governed by a BSD-style 5 | * license that can be found in the LICENSE file or at 6 | * https://theideal.org/license/ 7 | */ 8 | 9 | package ideal.machine.annotations; 10 | 11 | import java.lang.annotation.*; 12 | 13 | @Retention(RetentionPolicy.RUNTIME) 14 | @Target(ElementType.FIELD) 15 | public @interface dont_display { } 16 | -------------------------------------------------------------------------------- /machine/annotations.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- User-defined annotations 8 | namespace annotations { 9 | interface #id:dont_display { } 10 | } 11 | -------------------------------------------------------------------------------- /machine/characters.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Character-related function implementations. 8 | namespace characters { 9 | implicit import ideal.library.characters; 10 | 11 | singleton unicode_handler { 12 | subtypes character_handler; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /machine/machine.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | namespace machine { 8 | namespace elements; 9 | namespace characters; 10 | namespace channels; 11 | namespace resources; 12 | namespace calendars; 13 | namespace adapters; 14 | namespace annotations; 15 | } 16 | -------------------------------------------------------------------------------- /runtime/elements/has_equivalence.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- A value that provides a natural equivalence relation. 8 | interface has_equivalence { 9 | subtypes equality_comparable; 10 | 11 | equivalence_relation[readonly has_equivalence] equivalence; 12 | } 13 | -------------------------------------------------------------------------------- /runtime/flags/flags.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Implementation of flags parsing. 8 | --- Works together with flags_data extension. 9 | namespace flags { 10 | implicit import ideal.library.elements; 11 | implicit import ideal.runtime.elements; 12 | 13 | namespace flags_utilities; 14 | test_suite test_flags; 15 | } 16 | -------------------------------------------------------------------------------- /runtime/formats/json_array_impl.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Implementation of |json_array|. 8 | class json_array_impl { 9 | extends json_array; 10 | extends base_list[readonly json_data]; 11 | } 12 | -------------------------------------------------------------------------------- /runtime/formats/json_object_impl.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Implementation of |json_object|. 8 | class json_object_impl { 9 | extends json_object; 10 | extends hash_dictionary[string, readonly json_data]; 11 | } 12 | -------------------------------------------------------------------------------- /runtime/formats/json_object_list.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Implementation of |json_object| using a |list_dictionary|. 8 | class json_object_list { 9 | extends json_object; 10 | extends list_dictionary[string, readonly json_data]; 11 | } 12 | -------------------------------------------------------------------------------- /runtime/graphs/graphs.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Implementation of the graph data structure. 8 | namespace graphs { 9 | implicit import ideal.library.elements; 10 | implicit import ideal.library.graphs; 11 | implicit import ideal.runtime.elements; 12 | 13 | class base_graph; 14 | 15 | test_suite test_graph; 16 | } 17 | -------------------------------------------------------------------------------- /runtime/logs/displayable.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- An object that knows how to display itself. 8 | -- TODO: this should be moved to a different namespace or retired. 9 | interface displayable { 10 | implements value; 11 | 12 | -- TODO: return text_fragment instead. 13 | string display; 14 | } 15 | -------------------------------------------------------------------------------- /runtime/patterns/validatable.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Pattern base class that can be validated. 8 | interface validatable { 9 | validate(); 10 | } 11 | -------------------------------------------------------------------------------- /runtime/tests/run_tests.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | --- Driver program for running runtime unittests. 8 | program run_tests { 9 | start() { 10 | all_tests.run_all_tests(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /showcase/base_token.i: -------------------------------------------------------------------------------- 1 | class base_token[covariant deeply_immutable data payload_type] { 2 | extends token[payload_type]; 3 | } 4 | -------------------------------------------------------------------------------- /showcase/hello.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | println("Hello, world!"); 8 | -------------------------------------------------------------------------------- /showcase/showcase.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | namespace showcase { 8 | implicit import ideal.library.elements; 9 | 10 | program briefing; 11 | class token; 12 | class base_token; 13 | } 14 | -------------------------------------------------------------------------------- /showcase/tests.i: -------------------------------------------------------------------------------- 1 | implicit import ideal.runtime.elements; 2 | 3 | class tests { 4 | void test_list() { 5 | --readonly list[string] subtype_list : base_list[string].new("foo"); 6 | --readonly list[readonly stringable] supertype_list : subtype_list; 7 | 8 | string_list : [ "foo", ]; 9 | readonly list[deeply_immutable value] value_list : string_list; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /showcase/token.i: -------------------------------------------------------------------------------- 1 | class token[covariant deeply_immutable data payload_type] { 2 | extends deeply_immutable data; 3 | 4 | --payload_type payload; 5 | 6 | void new_scan_state(token[deeply_immutable data] token) { 7 | } 8 | 9 | void test_token(base_token[string] arg) { 10 | token[deeply_immutable data] v : arg; 11 | --new_scan_state(arg); 12 | } 13 | 14 | void test_list(list[string] strings) { 15 | strings[5] = "bar"; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /showcase/xreftest.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | interface A[value T] { 8 | integer foo(); 9 | } 10 | 11 | class B[value T] { 12 | subtypes A[T]; 13 | override integer foo() => 68; 14 | } 15 | 16 | class C[value T] { 17 | subtypes A[T], B[T]; 18 | override integer foo() => 42; 19 | } 20 | -------------------------------------------------------------------------------- /testdata/double-out.txt: -------------------------------------------------------------------------------- 1 | one : 1; 2 | two : 2; 3 | integer three : plus(one, two); 4 | integer double(integer x) { 5 | return plus(x, x); 6 | } 7 | integer add5(integer y) { 8 | return plus(y, 5); 9 | } 10 | println(double(double(three))); 11 | println(plus(add5(three), two)); 12 | println(7, " ", add5(63)); 13 | { 14 | println(one, " ", plus(one, one), " ", one); 15 | } 16 | -------------------------------------------------------------------------------- /testdata/hello-out.txt: -------------------------------------------------------------------------------- 1 | testdata/hello.i:8: Lookup failed: no inform in main 2 | inform("Hello, world!"); 3 | ^^^^^^ 4 | void main() { 5 | inform("Hello, world!"); 6 | } 7 | -------------------------------------------------------------------------------- /testdata/hello.i: -------------------------------------------------------------------------------- 1 | -- Copyright 2014-2025 The Ideal Authors. All rights reserved. 2 | -- 3 | -- Use of this source code is governed by a BSD-style 4 | -- license that can be found in the LICENSE file or at 5 | -- https://theideal.org/license/ 6 | 7 | void main() { 8 | inform("Hello, world!"); 9 | } 10 | -------------------------------------------------------------------------------- /tests/1.i: -------------------------------------------------------------------------------- 1 | void test() { 2 | "123".size; 3 | } 4 | -------------------------------------------------------------------------------- /tests/list.i: -------------------------------------------------------------------------------- 1 | import ideal.runtime.elements.base_list; 2 | implicit import ideal.library.texts; 3 | 4 | void test_list() { 5 | readonly list[string] subtype_list : base_list[string].new("foo"); 6 | readonly list[readonly stringable] supertype_list : subtype_list; 7 | 8 | string_list : [ "foo", ]; 9 | readonly list[immutable value] value_list : string_list; 10 | 11 | text_fragment foo : "bar"; 12 | } 13 | -------------------------------------------------------------------------------- /tests/string.i: -------------------------------------------------------------------------------- 1 | implicit import ideal.library.elements; 2 | implicit import ideal.library.texts; 3 | implicit import ideal.runtime.elements; 4 | 5 | void test_string_text() { 6 | string s : "a string"; 7 | text_node text : s; 8 | } 9 | -------------------------------------------------------------------------------- /tests/var.i: -------------------------------------------------------------------------------- 1 | 2 | namespace test { 3 | interface AI { 4 | extends deeply_immutable data; 5 | string field; 6 | } 7 | 8 | class BI { 9 | implements AI; 10 | implement string field; 11 | } 12 | } 13 | 14 | target generate_var: generate_java(test); 15 | --------------------------------------------------------------------------------