Skip to content

Commit

Permalink
Helper for field list generation
Browse files Browse the repository at this point in the history
  • Loading branch information
Duzhinsky committed Oct 26, 2023
1 parent ddfa1d7 commit 200759e
Showing 1 changed file with 25 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package org.sudu.protogen.generator.field;

import com.squareup.javapoet.ParameterSpec;
import org.sudu.protogen.descriptors.Message;
import org.sudu.protogen.generator.GenerationContext;
import org.sudu.protogen.utils.Poem;

import java.util.List;
import java.util.stream.Stream;

public class FieldGenerationHelper {

public static Stream<FieldProcessingResult> processAllFields(Message message, GenerationContext context) {
return message.getFields().stream()
.map(field -> context.generatorsHolder().generate(field))
.filter(FieldProcessingResult::isNonVoid);
}

public static List<ParameterSpec> processFieldsToParameters(Message message, GenerationContext context) {
return processAllFields(message, context)
.map(FieldProcessingResult::field)
.map(Poem::fieldToParameter)
.toList();
}
}

0 comments on commit 200759e

Please sign in to comment.