package net.nullschool.grains.generate.model; import java.util.Collection; import java.util.Map; import javax.annotation.Generated; import net.nullschool.collect.ConstMap; import net.nullschool.grains.Grain; import net.nullschool.grains.GrainFactoryRef; /** * Composition of Part and Grain. See {@link PartFactory}. */ @Generated("net.nullschool.grains.generate.GrainGenerator") @GrainFactoryRef(PartFactory.class) public interface PartGrain extends Compound.Part, Grain { // // Compound.Part Accessors // int getMake(); PartGrain withMake(int make); int getModel(); PartGrain withModel(int model); // // Grain Methods // ConstMap<String, Object> extensions(); PartGrain with(String key, Object value); PartGrain withAll(Map<? extends String, ?> map); PartGrain without(Object key); PartGrain withoutAll(Collection<?> keys); PartBuilder newBuilder(); }