Class ImmutableSourceListing

java.lang.Object
io.github.ascopes.protobufmavenplugin.sources.ImmutableSourceListing
All Implemented Interfaces:
SourceListing

@Generated("org.immutables.processor.ProxyProcessor") public final class ImmutableSourceListing extends Object implements SourceListing
Immutable implementation of SourceListing.

Use the builder to create immutable instances: ImmutableSourceListing.builder().

  • Field Details

    • sourceRoot

      private final Path sourceRoot
    • sourceProtoFiles

      private final Set<Path> sourceProtoFiles
  • Constructor Details

  • Method Details

    • getSourceRoot

      public Path getSourceRoot()
      Specified by:
      getSourceRoot in interface SourceListing
      Returns:
      The value of the sourceRoot attribute
    • getSourceProtoFiles

      public Set<Path> getSourceProtoFiles()
      Specified by:
      getSourceProtoFiles in interface SourceListing
      Returns:
      The value of the sourceProtoFiles attribute
    • equals

      public boolean equals(Object another)
      This instance is equal to all instances of ImmutableSourceListing that have equal attribute values.
      Overrides:
      equals in class Object
      Returns:
      true if this is equal to another instance
    • equalTo

      private boolean equalTo(int synthetic, ImmutableSourceListing another)
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: sourceRoot, sourceProtoFiles.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

      public String toString()
      Prints the immutable value SourceListing with attribute values.
      Overrides:
      toString in class Object
      Returns:
      A string representation of the value
    • builder

      public static ImmutableSourceListing.Builder builder()
      Creates a builder for ImmutableSourceListing.
       ImmutableSourceListing.builder()
          .sourceRoot(java.nio.file.Path | null) // nullable sourceRoot
          .addSourceProtoFiles|addAllSourceProtoFiles(java.nio.file.Path) // sourceProtoFiles elements
          .build();
       
      Returns:
      A new ImmutableSourceListing builder
    • createSafeList

      private static <T> List<T> createSafeList(Iterable<? extends T> iterable, boolean checkNulls, boolean skipNulls)
    • createUnmodifiableSet

      private static <T> Set<T> createUnmodifiableSet(List<T> list)
      Unmodifiable set constructed from list to avoid rehashing.