fix
This commit is contained in:
parent
febd237f34
commit
69f40ae9fb
2 changed files with 11 additions and 19 deletions
|
|
@ -1618,9 +1618,6 @@ func Key(k *d2ast.KeyPath) []string {
|
||||||
// All reserved keywords. See init below.
|
// All reserved keywords. See init below.
|
||||||
var ReservedKeywords map[string]struct{}
|
var ReservedKeywords map[string]struct{}
|
||||||
|
|
||||||
// All reserved keywords not including style keywords.
|
|
||||||
var ReservedKeywords2 map[string]struct{}
|
|
||||||
|
|
||||||
// Non Style/Holder keywords.
|
// Non Style/Holder keywords.
|
||||||
var SimpleReservedKeywords = map[string]struct{}{
|
var SimpleReservedKeywords = map[string]struct{}{
|
||||||
"label": {},
|
"label": {},
|
||||||
|
|
@ -1642,14 +1639,17 @@ var SimpleReservedKeywords = map[string]struct{}{
|
||||||
"vertical-gap": {},
|
"vertical-gap": {},
|
||||||
"horizontal-gap": {},
|
"horizontal-gap": {},
|
||||||
"class": {},
|
"class": {},
|
||||||
"classes": {},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ReservedKeywordHolders are reserved keywords that can hold composites
|
// ReservedKeywordHolders are reserved keywords that are meaningless on its own and must hold composites
|
||||||
var ReservedKeywordHolders = map[string]struct{}{
|
var ReservedKeywordHolders = map[string]struct{}{
|
||||||
"style": {},
|
"style": {},
|
||||||
"source-arrowhead": {},
|
"source-arrowhead": {},
|
||||||
"target-arrowhead": {},
|
"target-arrowhead": {},
|
||||||
|
}
|
||||||
|
|
||||||
|
// CompositeReservedKeywords are reserved keywords that can hold composites
|
||||||
|
var CompositeReservedKeywords = map[string]struct{}{
|
||||||
"classes": {},
|
"classes": {},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1726,23 +1726,15 @@ func init() {
|
||||||
ReservedKeywords[k] = v
|
ReservedKeywords[k] = v
|
||||||
}
|
}
|
||||||
for k, v := range ReservedKeywordHolders {
|
for k, v := range ReservedKeywordHolders {
|
||||||
ReservedKeywords[k] = v
|
CompositeReservedKeywords[k] = v
|
||||||
}
|
}
|
||||||
for k, v := range BoardKeywords {
|
for k, v := range BoardKeywords {
|
||||||
|
CompositeReservedKeywords[k] = v
|
||||||
|
}
|
||||||
|
for k, v := range CompositeReservedKeywords {
|
||||||
ReservedKeywords[k] = v
|
ReservedKeywords[k] = v
|
||||||
}
|
}
|
||||||
|
|
||||||
ReservedKeywords2 = make(map[string]struct{})
|
|
||||||
for k, v := range SimpleReservedKeywords {
|
|
||||||
ReservedKeywords2[k] = v
|
|
||||||
}
|
|
||||||
for k, v := range ReservedKeywordHolders {
|
|
||||||
ReservedKeywords2[k] = v
|
|
||||||
}
|
|
||||||
for k, v := range BoardKeywords {
|
|
||||||
ReservedKeywords2[k] = v
|
|
||||||
}
|
|
||||||
|
|
||||||
NearConstants = make(map[string]struct{}, len(NearConstantsArray))
|
NearConstants = make(map[string]struct{}, len(NearConstantsArray))
|
||||||
for _, k := range NearConstantsArray {
|
for _, k := range NearConstantsArray {
|
||||||
NearConstants[k] = struct{}{}
|
NearConstants[k] = struct{}{}
|
||||||
|
|
|
||||||
|
|
@ -669,7 +669,7 @@ func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext) (*Field,
|
||||||
|
|
||||||
if _, ok := d2graph.ReservedKeywords[strings.ToLower(head)]; ok {
|
if _, ok := d2graph.ReservedKeywords[strings.ToLower(head)]; ok {
|
||||||
head = strings.ToLower(head)
|
head = strings.ToLower(head)
|
||||||
if _, ok := d2graph.ReservedKeywordHolders[head]; !ok && i < len(kp.Path)-1 {
|
if _, ok := d2graph.CompositeReservedKeywords[head]; !ok && i < len(kp.Path)-1 {
|
||||||
return nil, d2parser.Errorf(kp.Path[i].Unbox(), fmt.Sprintf(`"%s" must be the last part of the key`, head))
|
return nil, d2parser.Errorf(kp.Path[i].Unbox(), fmt.Sprintf(`"%s" must be the last part of the key`, head))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue