diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-05-19 12:03:06 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2022-05-19 12:03:06 +0200 |
commit | 5c24dc5c9642a8d9ed70aee4c950fd0678a1ebec (patch) | |
tree | bd9b74bf00c832456f0b83c1b2cd7010be387d68 /config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java | |
parent | f17c4fe7de4c55f5c4ee61897eab8c2f588d8405 (diff) |
Rename the 'searchdefinition' package to 'schema'
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java deleted file mode 100644 index 376fd592c9d..00000000000 --- a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedStruct.java +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.searchdefinition.parser; - -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; - -/** - * This class holds the extracted information after parsing a "struct" - * block, using simple data structures as far as possible. Do not put - * advanced logic here! - * @author arnej27959 - **/ -public class ParsedStruct extends ParsedBlock { - private final List<String> inherited = new ArrayList<>(); - private final List<ParsedStruct> resolvedInherits = new ArrayList<>(); - private final Map<String, ParsedField> fields = new LinkedHashMap<>(); - private final ParsedType asParsedType; - private ParsedDocument ownedBy = null; - - public ParsedStruct(String name) { - super(name, "struct"); - this.asParsedType = ParsedType.fromName(name); - asParsedType.setVariant(ParsedType.Variant.STRUCT); - } - - List<ParsedField> getFields() { return List.copyOf(fields.values()); } - List<String> getInherited() { return List.copyOf(inherited); } - ParsedDocument getOwnerDoc() { return ownedBy; } - String getOwnerName() { return ownedBy.name(); } - List<ParsedStruct> getResolvedInherits() { - assert(inherited.size() == resolvedInherits.size()); - return List.copyOf(resolvedInherits); - } - - void addField(ParsedField field) { - String fieldName = field.name(); - verifyThat(! fields.containsKey(fieldName), "already has field", fieldName); - fields.put(fieldName, field); - } - - void inherit(String other) { - verifyThat(! name().equals(other), "cannot inherit from itself"); - inherited.add(other); - } - - void tagOwner(ParsedDocument document) { - verifyThat(ownedBy == null, "already owned by document "+ownedBy); - this.ownedBy = document; - } - - void resolveInherit(String name, ParsedStruct parsed) { - verifyThat(inherited.contains(name), "resolveInherit for non-inherited name", name); - verifyThat(name.equals(parsed.name()), "resolveInherit name mismatch for", name); - resolvedInherits.add(parsed); - } - -} - |