Altered tree to separate object and blind type definitions

This commit is contained in:
Sasha Koshka 2022-08-20 02:46:40 -04:00
parent da6d587a48
commit 222c47ced9
1 changed files with 19 additions and 6 deletions

View File

@ -161,19 +161,32 @@ type DataSection struct {
value Argument
}
// TypeNode represents a part of a type.
type TypeNode struct {
// TypeSection represents a blind type definition.
type TypeSection struct {
location file.Location
name string
what Type
permission types.Permission
defaultValue Argument
children map[string] TypeNode
}
// TypeSection represents a type definition.
type TypeSection struct {
// ObjtSection represents an object type definition
type ObjtSection struct {
location file.Location
root TypeNode
name string
what Type
permission types.Permission
children map[string] ObjtMember
}
// ObjtMember represents a part of an object type definition.
type ObjtMember struct {
location file.Location
name string
what Type
permission types.Permission
defaultValue Argument
}