Skip to content

Commit

Permalink
fix(code-gen/go): fix parsing panic on unexpected child type
Browse files Browse the repository at this point in the history
  • Loading branch information
sruehl committed Sep 17, 2024
1 parent c1a7135 commit 52f355f
Show file tree
Hide file tree
Showing 550 changed files with 1,350 additions and 682 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -803,9 +803,18 @@ func ${type.name}ParseWithBufferProducer<#if type.isDiscriminatedParentTypeDefin
v, err := ${type.name}ParseWithBuffer<#if type.isDiscriminatedParentTypeDefinition()>[T]</#if>(ctx , readBuffer<#if hasParserArguments>, ${parserArgumentNameList}</#if>)
if err != nil {
var zero T
return zero,err
return zero, err
}
<#if !type.isDiscriminatedParentTypeDefinition()>
vc, ok := v.(T)
if !ok {
var zero T
return zero, errors.Errorf("Unexpected type %T. Expected type %T", v, *new(T))<@emitImport import="github.com/pkg/errors" />
}
return v<#if !type.isDiscriminatedParentTypeDefinition()>.(T)</#if>, err
return vc, nil
<#else>
return v, nil
</#if>
<#else>
return ${type.name}ParseWithBuffer(ctx , readBuffer<#if hasParserArguments>, ${parserArgumentNameList}</#if>)
</#if>
Expand All @@ -823,7 +832,16 @@ func ${type.name}ParseWithBuffer<#if type.isDiscriminatedParentTypeDefinition()>
return zero,err
</#if>
}
return v<#if type.isDiscriminatedParentTypeDefinition()>.(T)</#if>, err
<#if type.isDiscriminatedParentTypeDefinition()>
vc, ok := v.(T)
if !ok {
var zero T
return zero, errors.Errorf("Unexpected type %T. Expected type %T", v, *new(T))<@emitImport import="github.com/pkg/errors" />
}
return vc, nil
<#else>
return v, nil
</#if>
}

</#if>
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/abeth/readwrite/model/DF1RequestCommand.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/abeth/readwrite/model/DF1RequestMessage.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/abeth/readwrite/model/DF1ResponseMessage.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/discovery/readwrite/model/AmsNetId.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AdsConstants.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/ads/readwrite/model/AdsMultiRequestItem.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AdsStampHeader.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AdsTableSizes.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AmsNetId.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/ads/readwrite/model/AmsPacket.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AmsSerialFrame.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plc4go/protocols/ads/readwrite/model/AmsTCPPacket.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 7 additions & 2 deletions plc4go/protocols/bacnetip/readwrite/model/APDU.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 52f355f

Please sign in to comment.