summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/config/ProjectConfig.java6
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/java/JavaGeneratorConfig.java6
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rust/RustGeneratorConfig.java4
3 files changed, 8 insertions, 8 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/config/ProjectConfig.java b/src/main/java/org/zwobble/hobgoblin/compiler/config/ProjectConfig.java
index 04d9cdd..38d8119 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/config/ProjectConfig.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/config/ProjectConfig.java
@@ -32,9 +32,9 @@ public record ProjectConfig(
}
private static ProjectConfig fromJson5(Path projectRoot, Json5ObjectReader document) {
- var outputsJson = document.getObject("outputs").orElseThrow();
- var generatorsJson = outputsJson.getArrayOfObjects("generators").orElseThrow();
- var langsJson = outputsJson.getObject("langs");
+ var outputsJson = document.getObject("outputs");
+ var generatorsJson = outputsJson.getArrayOfObjects("generators");
+ var langsJson = outputsJson.getObjectOrNone("langs");
var outputs = new ArrayList<OutputConfig>();
for (var generatorJson : generatorsJson) {
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/java/JavaGeneratorConfig.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/java/JavaGeneratorConfig.java
index 37262fe..2b04294 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/java/JavaGeneratorConfig.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/java/JavaGeneratorConfig.java
@@ -16,7 +16,7 @@ public record JavaGeneratorConfig(
) {
public static JavaGeneratorConfig parseLangsConfig(Optional<Json5ObjectReader> langsJson) {
// TODO: better error if missing
- var output = langsJson.orElseThrow().getObject("java").orElseThrow();
+ var output = langsJson.orElseThrow().getObject("java");
var packageName = output.getString("packageName").value();
var namespaceConfigs = parseNamespaceConfigs(output);
@@ -31,7 +31,7 @@ public record JavaGeneratorConfig(
private static Map<NamespaceName, JavaNamespaceConfig> parseNamespaceConfigs(Json5ObjectReader output) {
var namespaceConfigs = new HashMap<NamespaceName, JavaNamespaceConfig>();
- output.getArrayOfObjects("namespaces").ifPresent(namespacesJson -> {
+ output.getArrayOfObjectsOrNone("namespaces").ifPresent(namespacesJson -> {
for (var namespaceJson : namespacesJson) {
var hobgoblinNamespaceString = namespaceJson.getString("hobgoblin").valueAsSourceText();
var hobgoblinNamespace = Parser.parseNamespaceName(hobgoblinNamespaceString);
@@ -48,7 +48,7 @@ public record JavaGeneratorConfig(
private static Map<SimpleNativeType, JavaNativeTypeConfig> parseNativeTypeConfigs(Json5ObjectReader output) {
var nativeTypeConfigs = new HashMap<SimpleNativeType, JavaNativeTypeConfig>(DEFAULT_NATIVE_TYPE_CONFIGS);
- output.getArrayOfObjects("nativeTypes").ifPresent(nativeTypesJson -> {
+ output.getArrayOfObjectsOrNone("nativeTypes").ifPresent(nativeTypesJson -> {
for (var nativeTypeJson : nativeTypesJson) {
var hobgoblinTypeString = nativeTypeJson.getString("hobgoblin").valueAsSourceText();
var hobgoblinTypeName = Parser.parseQualifiedTypeName(hobgoblinTypeString);
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rust/RustGeneratorConfig.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rust/RustGeneratorConfig.java
index a97c64e..823189e 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rust/RustGeneratorConfig.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/rust/RustGeneratorConfig.java
@@ -15,7 +15,7 @@ public record RustGeneratorConfig(
Map<SimpleNativeType, RustNativeTypeConfig> nativeTypeConfigs
) {
public static RustGeneratorConfig parseLangsConfig(Optional<Json5ObjectReader> langsJson) {
- var output = langsJson.flatMap(json -> json.getObject("rust"));
+ var output = langsJson.flatMap(json -> json.getObjectOrNone("rust"));
if (output.isEmpty()) {
return new RustGeneratorConfig(DEFAULT_NATIVE_TYPE_CONFIGS);
@@ -31,7 +31,7 @@ public record RustGeneratorConfig(
private static Map<SimpleNativeType, RustNativeTypeConfig> parseNativeTypeConfigs(Json5ObjectReader output) {
// TODO: remove duplication with Java config
var nativeTypeConfigs = new HashMap<SimpleNativeType, RustNativeTypeConfig>(DEFAULT_NATIVE_TYPE_CONFIGS);
- output.getArrayOfObjects("nativeTypes").ifPresent(nativeTypesJson -> {
+ output.getArrayOfObjectsOrNone("nativeTypes").ifPresent(nativeTypesJson -> {
for (var nativeTypeJson : nativeTypesJson) {
var hobgoblinTypeString = nativeTypeJson.getString("hobgoblin").valueAsSourceText();
var hobgoblinTypeName = Parser.parseQualifiedTypeName(hobgoblinTypeString);