generate: Change protocol parsing
This commit is contained in:
parent
2b5db83015
commit
14c417b740
@ -1,4 +1,4 @@
|
||||
package protocol
|
||||
package generate
|
||||
|
||||
import "io"
|
||||
import "fmt"
|
||||
@ -227,24 +227,18 @@ func parseTag(text string) (uint16, error) {
|
||||
|
||||
func splitMessageHeading(text string) (uint16, string, error) {
|
||||
text = strings.TrimSpace(text)
|
||||
if !strings.HasPrefix(text, "(") {
|
||||
return 0, "", fmt.Errorf(
|
||||
"malformed message heading '%s': no method number",
|
||||
text)
|
||||
}
|
||||
text = strings.TrimPrefix(text, "(")
|
||||
methodText, name, ok := strings.Cut(text, ")")
|
||||
methodText, name, ok := strings.Cut(text, " ")
|
||||
if !ok {
|
||||
return 0, "", fmt.Errorf(
|
||||
"malformed message heading '%s': no message name",
|
||||
text)
|
||||
}
|
||||
method, err := strconv.ParseUint(text, 10, 16)
|
||||
method, err := strconv.ParseUint(methodText, 16, 16)
|
||||
if err != nil {
|
||||
return 0, "", fmt.Errorf(
|
||||
"malformed method number '%s': %w",
|
||||
methodText, err)
|
||||
}
|
||||
name = strings.TrimSpace(text)
|
||||
name = strings.TrimSpace(name)
|
||||
return uint16(method), name, nil
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user