public class Deserializer extends Object
This works by walking all referenced fields and creating them with a ValueCreator. It uses Objenesis to create objects and then injects the field values via reflection.
Modifier and Type | Class and Description |
---|---|
static interface |
Deserializer.ClassFinder
Used for looking up classes.
|
static interface |
Deserializer.DataProvider
DataProviders are used for deserializing "dynamic" objects.
|
Constructor and Description |
---|
Deserializer(java.util.function.Function<Optional<String>,ProjectFilesystem> cellMap,
Deserializer.ClassFinder classFinder,
java.util.function.Supplier<SourcePathResolverAdapter> pathResolver,
ToolchainProvider toolchainProvider) |
Modifier and Type | Method and Description |
---|---|
<T extends AddsToRuleKey> |
deserialize(Deserializer.DataProvider provider,
Class<T> clazz) |
public Deserializer(java.util.function.Function<Optional<String>,ProjectFilesystem> cellMap, Deserializer.ClassFinder classFinder, java.util.function.Supplier<SourcePathResolverAdapter> pathResolver, ToolchainProvider toolchainProvider)
public <T extends AddsToRuleKey> T deserialize(Deserializer.DataProvider provider, Class<T> clazz) throws IOException
IOException