MCPcopy Index your code
hub / github.com/yusing/godoxy / formatEndpointHelp

Function formatEndpointHelp

cmd/cli/cli.go:621–665  ·  view source on GitHub ↗
(ep Endpoint)

Source from the content-addressed store, hash-verified

619}
620
621func formatEndpointHelp(ep Endpoint) string {
622 cmd := "godoxy " + strings.Join(ep.CommandPath, " ")
623 var b strings.Builder
624 fmt.Fprintf(&b, "Usage: %s [flags]\n", cmd)
625 if ep.Summary != "" {
626 fmt.Fprintf(&b, "Summary: %s\n", ep.Summary)
627 }
628 if alias := aliasCommandPath(ep); len(alias) > 0 && strings.Join(alias, " ") != strings.Join(ep.CommandPath, " ") {
629 fmt.Fprintf(&b, "Alias: godoxy %s\n", strings.Join(alias, " "))
630 }
631 params := make([]Param, 0, len(ep.Params))
632 params = append(params, ep.Params...)
633 if ep.IsWebSocket {
634 params = append(params, Param{
635 FlagName: "ws",
636 Type: "boolean",
637 Description: "use websocket",
638 Required: false,
639 })
640 }
641 if len(params) == 0 {
642 return strings.TrimRight(b.String(), "\n")
643 }
644 b.WriteString("Flags:\n")
645 maxWidth := 0
646 flagNames := make([]string, 0, len(params))
647 for _, p := range params {
648 name := "--" + p.FlagName
649 if p.Required {
650 name += " (required)"
651 }
652 flagNames = append(flagNames, name)
653 if len(name) > maxWidth {
654 maxWidth = len(name)
655 }
656 }
657 for i, p := range params {
658 desc := p.Description
659 if desc == "" {
660 desc = p.In + " " + p.Type
661 }
662 fmt.Fprintf(&b, " %-*s %s\n", maxWidth, flagNames[i], desc)
663 }
664 return strings.TrimRight(b.String(), "\n")
665}
666
667func nearestByDistance(input string, choices []string) string {
668 if len(choices) == 0 {

Callers 1

executeEndpointFunction · 0.85

Calls 3

aliasCommandPathFunction · 0.85
StringMethod · 0.65
WriteStringMethod · 0.65

Tested by

no test coverage detected