コード例 #1
0
def driver_parse_args( drv, argv ):
    shortopts = ""
    longopts  = []
    shortmap  = {}

    for param in drv.params:
	p = drv.params[param]
	shortopts += p.id
	if p.param_type != 5:
	    shortopts += ":"
	    longopts.append (p.name + "=")
	else:
	    longopts.append (p.name)

	shortmap[p.id] = p

    while True:
	opts, argv = my_getopt( argv, shortopts+"d:" )
	if not opts:
	    break
	for opt,optarg in opts:
	    if opt.startswith("--"):
		pass
	    elif opt.startswith("-"):
		p = shortmap[opt[1]]
		if p.param_type == 5:
		    p.value = True
		else:
		    p.value = optarg
コード例 #2
0
def server_parse_ags( srv, argv ):
    shortopts = ""
    longopts  = []
    shortmap  = {}
    driver = None

    for param in srv.params:
	p = srv.params[param]
	shortopts += p.id
	if p.param_type != 5:
	    shortopts += ":"
	    longopts.append (p.name + "=")
	else:
	    longopts.append (p.name)

	shortmap[p.id] = p

    while not driver:
	opts, argv = my_getopt( argv, shortopts+"d:" )
	if not opts:
	    break
	for opt,optarg in opts:
	    if opt == "-d":
		driver = srv.drivers[optarg]
	    elif opt.startswith("--"):
		pass
	    elif opt.startswith("-"):
		p = shortmap[opt[1]]
		if p.param_type == 5:
		    p.value = True
		else:
		    p.value = optarg

    return driver, argv