openreplay/mobs/templates/backend~pkg~messages~read-message.go.erb
Alex K e861bd9641
refactor(backend):remove legacy message wrapping (#854)
* refactor(backend):remove legacy message wrapping & few backend-only messages
2022-12-06 11:54:36 +01:00

24 lines
669 B
Text

// Auto-generated, do not edit
package messages
import (
"fmt"
)
<% $messages.each do |msg| %>
func Decode<%= msg.name %>(reader BytesReader) (Message, error) {
var err error = nil
msg := &<%= msg.name %>{}
<%= msg.attributes.map { |attr|
" if msg.#{attr.name}, err = reader.Read#{attr.type.to_s.pascal_case}(); err != nil {
return nil, err
}" }.join "\n" %>
return msg, err
}
<% end %>
func ReadMessage(t uint64, reader BytesReader) (Message, error) {
switch t {<% $messages.each do |msg| %>
case <%= msg.id %>:
return Decode<%= msg.name %>(reader)<% end %>
}
return nil, fmt.Errorf("Unknown message code: %v", t)
}