| 52 | exit() |
| 53 | |
| 54 | def parseArgs(self, args): |
| 55 | print('') |
| 56 | i = 1 |
| 57 | while i < len(args): |
| 58 | if args[i] == '-h' or args[i] == '--h' or args[i] == '--help': |
| 59 | self.help() #Time for some self help! :) |
| 60 | if len(args[i]) < 2: |
| 61 | print('ERROR - Invalid argument: ' + args[i]) |
| 62 | print('Try running flow --help') |
| 63 | exit() |
| 64 | argumentName = args[i][2:] |
| 65 | if isinstance(self.get(argumentName), bool): |
| 66 | if not (i + 1) >= len(args) and (args[i + 1].lower() != 'false' and args[i + 1].lower() != 'true') and not args[i + 1].startswith('--'): |
| 67 | print('ERROR - Expected boolean value (or no value) following argument: ' + args[i]) |
| 68 | print('Try running flow --help') |
| 69 | exit() |
| 70 | elif not (i + 1) >= len(args) and (args[i + 1].lower() == 'false' or args[i + 1].lower() == 'true'): |
| 71 | self[argumentName] = (args[i + 1].lower() == 'true') |
| 72 | i += 1 |
| 73 | else: |
| 74 | self[argumentName] = True |
| 75 | elif args[i].startswith('--') and not (i + 1) >= len(args) and not args[i + 1].startswith('--') and argumentName in self: |
| 76 | if isinstance(self[argumentName], float): |
| 77 | try: |
| 78 | args[i + 1] = float(args[i + 1]) |
| 79 | except: |
| 80 | print('ERROR - Expected float for argument: ' + args[i]) |
| 81 | print('Try running flow --help') |
| 82 | exit() |
| 83 | elif isinstance(self[argumentName], int): |
| 84 | try: |
| 85 | args[i + 1] = int(args[i + 1]) |
| 86 | except: |
| 87 | print('ERROR - Expected int for argument: ' + args[i]) |
| 88 | print('Try running flow --help') |
| 89 | exit() |
| 90 | self[argumentName] = args[i + 1] |
| 91 | i += 1 |
| 92 | else: |
| 93 | print('ERROR - Invalid argument: ' + args[i]) |
| 94 | print('Try running flow --help') |
| 95 | exit() |
| 96 | i += 1 |