Migrate to using generated code

This commit is contained in:
2026-05-04 10:45:08 -07:00
parent a4fa72c819
commit 7fbea70860
10 changed files with 31 additions and 3242 deletions
+3 -1
View File
@@ -1,5 +1,7 @@
use clap::Parser;
use roto::proto_gen::google::protobuf::descriptor::FileDescriptorSet;
use roto::google::protobuf::descriptor::{
FileDescriptorSet
};
use roto::generator::generate_rust_code;
use std::fs;
use std::path::PathBuf;
+8 -5
View File
@@ -1,8 +1,11 @@
use env_logger::init;
use log::{error, info};
use roto::generator::generate_rust_code;
use roto::proto_gen::google::protobuf::descriptor::{
CodeGeneratorRequest, CodeGeneratorResponse, FileDescriptorSet, ResponseFile,
use roto::google::protobuf::descriptor::{
FileDescriptorSet
};
use roto::google::protobuf::compiler::plugin::{
CodeGeneratorRequest, CodeGeneratorResponse, CodeGeneratorResponseBuilder, code_generator_response::{File, FileBuilder},
};
use roto::ProtoBuilder;
use std::io::{self, Read, Write};
@@ -80,11 +83,11 @@ fn handle_request(request: &CodeGeneratorRequest) -> std::result::Result<Vec<u8>
// Construct the response
let mut response_buf = vec![0u8; 1024 * 1024 * 2]; // Allocate 2MB for response
let mut resp_builder = CodeGeneratorResponse::builder(&mut response_buf);
let mut resp_builder = CodeGeneratorResponseBuilder::builder(&mut response_buf);
for (filename, content) in generated_files {
let mut file_buf = vec![0u8; 1024 * 1024 * 2];
let final_file = ResponseFile::builder(&mut file_buf)
let final_file = FileBuilder::builder(&mut file_buf)
.name(&filename)?
.content(&content)?
.finish()
@@ -92,7 +95,7 @@ fn handle_request(request: &CodeGeneratorRequest) -> std::result::Result<Vec<u8>
error!("Failed to build ResponseFile {}: {:?}", filename, e);
e
})?;
resp_builder = resp_builder.add_file(final_file)?;
resp_builder = resp_builder.file(final_file)?;
}
let final_response_slice = resp_builder