(args []string, fn parseFunc)
| 1129 | } |
| 1130 | |
| 1131 | func (f *FlagSet) parseArgs(args []string, fn parseFunc) (err error) { |
| 1132 | for len(args) > 0 { |
| 1133 | s := args[0] |
| 1134 | args = args[1:] |
| 1135 | if len(s) == 0 || s[0] != '-' || len(s) == 1 { |
| 1136 | if !f.interspersed { |
| 1137 | f.args = append(f.args, s) |
| 1138 | f.args = append(f.args, args...) |
| 1139 | return nil |
| 1140 | } |
| 1141 | f.args = append(f.args, s) |
| 1142 | continue |
| 1143 | } |
| 1144 | |
| 1145 | if s[1] == '-' { |
| 1146 | if len(s) == 2 { // "--" terminates the flags |
| 1147 | f.argsLenAtDash = len(f.args) |
| 1148 | f.args = append(f.args, args...) |
| 1149 | break |
| 1150 | } |
| 1151 | args, err = f.parseLongArg(s, args, fn) |
| 1152 | } else { |
| 1153 | args, err = f.parseShortArg(s, args, fn) |
| 1154 | } |
| 1155 | if err != nil { |
| 1156 | return |
| 1157 | } |
| 1158 | } |
| 1159 | return |
| 1160 | } |
| 1161 | |
| 1162 | // Parse parses flag definitions from the argument list, which should not |
| 1163 | // include the command name. Must be called after all flags in the FlagSet |
no test coverage detected