mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 19:12:43 +00:00 
			
		
		
		
	AK: Make SourceGenerator::fork() infallible
This commit is contained in:
		
							parent
							
								
									244516142a
								
							
						
					
					
						commit
						0b83717ea2
					
				
					 17 changed files with 142 additions and 142 deletions
				
			
		|  | @ -349,7 +349,7 @@ public:)~~~"); | |||
|         IPC::Decoder decoder { stream, socket };)~~~"); | ||||
| 
 | ||||
|     for (auto const& parameter : parameters) { | ||||
|         auto parameter_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|         auto parameter_generator = message_generator.fork(); | ||||
| 
 | ||||
|         parameter_generator.set("parameter.type", parameter.type); | ||||
|         parameter_generator.set("parameter.name", parameter.name); | ||||
|  | @ -395,7 +395,7 @@ public:)~~~"); | |||
|         TRY(stream.encode((int)MessageID::@message.pascal_name@));)~~~"); | ||||
| 
 | ||||
|     for (auto const& parameter : parameters) { | ||||
|         auto parameter_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|         auto parameter_generator = message_generator.fork(); | ||||
| 
 | ||||
|         parameter_generator.set("parameter.name", parameter.name); | ||||
|         parameter_generator.appendln(R"~~~( | ||||
|  | @ -407,7 +407,7 @@ public:)~~~"); | |||
|     })~~~"); | ||||
| 
 | ||||
|     for (auto const& parameter : parameters) { | ||||
|         auto parameter_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|         auto parameter_generator = message_generator.fork(); | ||||
|         parameter_generator.set("parameter.type", parameter.type); | ||||
|         parameter_generator.set("parameter.name", parameter.name); | ||||
|         parameter_generator.appendln(R"~~~( | ||||
|  | @ -420,7 +420,7 @@ private: | |||
|     bool m_ipc_message_valid { true };)~~~"); | ||||
| 
 | ||||
|     for (auto const& parameter : parameters) { | ||||
|         auto parameter_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|         auto parameter_generator = message_generator.fork(); | ||||
|         parameter_generator.set("parameter.type", parameter.type); | ||||
|         parameter_generator.set("parameter.name", parameter.name); | ||||
|         parameter_generator.appendln(R"~~~( | ||||
|  | @ -456,7 +456,7 @@ void do_message_for_proxy(SourceGenerator message_generator, Endpoint const& end | |||
| 
 | ||||
|         for (size_t i = 0; i < parameters.size(); ++i) { | ||||
|             auto const& parameter = parameters[i]; | ||||
|             auto argument_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|             auto argument_generator = message_generator.fork(); | ||||
|             argument_generator.set("argument.type", parameter.type); | ||||
|             argument_generator.set("argument.name", parameter.name); | ||||
|             argument_generator.append("@argument.type@ @argument.name@"); | ||||
|  | @ -489,7 +489,7 @@ void do_message_for_proxy(SourceGenerator message_generator, Endpoint const& end | |||
| 
 | ||||
|         for (size_t i = 0; i < parameters.size(); ++i) { | ||||
|             auto const& parameter = parameters[i]; | ||||
|             auto argument_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|             auto argument_generator = message_generator.fork(); | ||||
|             argument_generator.set("argument.name", parameter.name); | ||||
|             if (is_primitive_or_simple_type(parameters[i].type)) | ||||
|                 argument_generator.append("@argument.name@"); | ||||
|  | @ -545,15 +545,15 @@ void build_endpoint(SourceGenerator generator, Endpoint const& endpoint) | |||
| 
 | ||||
|     generator.appendln("\nnamespace Messages::@endpoint.name@ {"); | ||||
| 
 | ||||
|     HashMap<DeprecatedString, int> message_ids = build_message_ids_for_endpoint(generator.fork().release_value_but_fixme_should_propagate_errors(), endpoint); | ||||
|     HashMap<DeprecatedString, int> message_ids = build_message_ids_for_endpoint(generator.fork(), endpoint); | ||||
| 
 | ||||
|     for (auto const& message : endpoint.messages) { | ||||
|         DeprecatedString response_name; | ||||
|         if (message.is_synchronous) { | ||||
|             response_name = message.response_name(); | ||||
|             do_message(generator.fork().release_value_but_fixme_should_propagate_errors(), response_name, message.outputs); | ||||
|             do_message(generator.fork(), response_name, message.outputs); | ||||
|         } | ||||
|         do_message(generator.fork().release_value_but_fixme_should_propagate_errors(), message.name, message.inputs, response_name); | ||||
|         do_message(generator.fork(), message.name, message.inputs, response_name); | ||||
|     } | ||||
| 
 | ||||
|     generator.appendln(R"~~~( | ||||
|  | @ -570,7 +570,7 @@ public: | |||
|     { })~~~"); | ||||
| 
 | ||||
|     for (auto const& message : endpoint.messages) | ||||
|         do_message_for_proxy(generator.fork().release_value_but_fixme_should_propagate_errors(), endpoint, message); | ||||
|         do_message_for_proxy(generator.fork(), endpoint, message); | ||||
| 
 | ||||
|     generator.appendln(R"~~~( | ||||
| private: | ||||
|  | @ -612,7 +612,7 @@ public: | |||
| 
 | ||||
|     for (auto const& message : endpoint.messages) { | ||||
|         auto do_decode_message = [&](DeprecatedString const& name) { | ||||
|             auto message_generator = generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|             auto message_generator = generator.fork(); | ||||
| 
 | ||||
|             message_generator.set("message.name", name); | ||||
|             message_generator.set("message.pascal_name", pascal_case(name)); | ||||
|  | @ -656,7 +656,7 @@ public: | |||
|         switch (message.message_id()) {)~~~"); | ||||
|     for (auto const& message : endpoint.messages) { | ||||
|         auto do_handle_message = [&](DeprecatedString const& name, Vector<Parameter> const& parameters, bool returns_something) { | ||||
|             auto message_generator = generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|             auto message_generator = generator.fork(); | ||||
| 
 | ||||
|             StringBuilder argument_generator; | ||||
|             for (size_t i = 0; i < parameters.size(); ++i) { | ||||
|  | @ -707,7 +707,7 @@ public: | |||
|     })~~~"); | ||||
| 
 | ||||
|     for (auto const& message : endpoint.messages) { | ||||
|         auto message_generator = generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|         auto message_generator = generator.fork(); | ||||
| 
 | ||||
|         auto do_handle_message_decl = [&](DeprecatedString const& name, Vector<Parameter> const& parameters, bool is_response) { | ||||
|             DeprecatedString return_type = "void"; | ||||
|  | @ -733,7 +733,7 @@ public: | |||
| 
 | ||||
|             for (size_t i = 0; i < parameters.size(); ++i) { | ||||
|                 auto const& parameter = parameters[i]; | ||||
|                 auto argument_generator = message_generator.fork().release_value_but_fixme_should_propagate_errors(); | ||||
|                 auto argument_generator = message_generator.fork(); | ||||
|                 argument_generator.set("argument.type", make_argument_type(parameter.type)); | ||||
|                 argument_generator.set("argument.name", parameter.name); | ||||
|                 argument_generator.append("[[maybe_unused]] @argument.type@ @argument.name@"); | ||||
|  | @ -791,7 +791,7 @@ void build(StringBuilder& builder, Vector<Endpoint> const& endpoints) | |||
| #endif)~~~"); | ||||
| 
 | ||||
|     for (auto const& endpoint : endpoints) | ||||
|         build_endpoint(generator.fork().release_value_but_fixme_should_propagate_errors(), endpoint); | ||||
|         build_endpoint(generator.fork(), endpoint); | ||||
| } | ||||
| 
 | ||||
| ErrorOr<int> serenity_main(Main::Arguments arguments) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling