preserves_schema_nim: do not create types for simple fields
This commit is contained in:
parent
abcdfa01cd
commit
74da21f3d5
|
@ -622,7 +622,7 @@ proc addField(recList: PNode; loc: Location; known: var TypeTable; parentName: s
|
||||||
label = label(np, parentName, index)
|
label = label(np, parentName, index)
|
||||||
id = label.toFieldIdent
|
id = label.toFieldIdent
|
||||||
pattern = np.pattern
|
pattern = np.pattern
|
||||||
if pattern.isRef or pattern.isSimple:
|
if pattern.isSimple:
|
||||||
addField(recList, loc, known, pattern.simplePattern, label)
|
addField(recList, loc, known, pattern.simplePattern, label)
|
||||||
else:
|
else:
|
||||||
var
|
var
|
||||||
|
@ -659,7 +659,7 @@ proc addFields(recList: PNode; loc: Location; known: var TypeTable; parentName:
|
||||||
label = label(np, parentName, index)
|
label = label(np, parentName, index)
|
||||||
id = label.toFieldIdent
|
id = label.toFieldIdent
|
||||||
pattern = np.pattern
|
pattern = np.pattern
|
||||||
if pattern.isRef or pattern.isSimple:
|
if pattern.isSimple:
|
||||||
addField(recList, loc, known, pattern.simplePattern, label)
|
addField(recList, loc, known, pattern.simplePattern, label)
|
||||||
else:
|
else:
|
||||||
var
|
var
|
||||||
|
@ -781,8 +781,8 @@ proc nimTypeOf(loc: Location; known: var TypeTable; name: string; orDef: Definit
|
||||||
var memberType: TypeSpec
|
var memberType: TypeSpec
|
||||||
if isLiteral(loc, na.pattern):
|
if isLiteral(loc, na.pattern):
|
||||||
memberType.node = ident"bool"
|
memberType.node = ident"bool"
|
||||||
elif na.pattern.isRef:
|
elif na.pattern.isSimple:
|
||||||
memberType = typeIdent(loc, na.pattern)
|
memberType = typeIdent(loc, na.pattern)
|
||||||
else:
|
else:
|
||||||
let
|
let
|
||||||
memberTypeName = name & na.variantLabel.capitalizeAscii
|
memberTypeName = name & na.variantLabel.capitalizeAscii
|
||||||
|
|
Loading…
Reference in New Issue