def expr_run(args): try: exprs = command.read(args.expr()) parts = {} for expr in exprs: search.CommandSearch(expr, parts).run() print(ET.tostring(xmlify.xmlify(parts)).decode()) except TokenizeError as e: logger.echo(str(e)) print("<data />")
def make_sel(keyword, rein): """Constructs a simple selector or reinforcement learning selector, depending on arguments.""" if rein: return reinforcement.ReinLinkSelector(keyword) else: return links.NoDupLinkSelector() if __name__ == '__main__': args = dict(getopt(sys.argv[1:], "c:p:P:w:m:a:f:d:r")[0]) celebs = int(args.get("-c", "0")) people = int(args.get("-p", "0")) places = int(args.get("-P", "0")) weapons = int(args.get("-w", "0")) monsters = int(args.get("-m", "0")) animals = int(args.get("-a", "0")) foods = int(args.get("-f", "0")) debug = int(args.get("-d", "0")) logger.set_global_debug_level(debug) rein = "-r" in args parts = { 'celebs': do_search(Basis.celebrity, celebs , make_sel('people', rein)), 'people': do_search(Basis.person , people , make_sel('people', rein)), 'places': do_search(Basis.place , places , make_sel('places', rein)), 'weapons': do_search(Basis.weapon , weapons , make_sel('weapons', rein)), 'monsters': do_search(Basis.monster , monsters, make_sel('monsters', rein)), 'animals': do_search(Basis.animal , animals , make_sel('animals', False)), 'foods': do_search(Basis.food , foods , make_sel('foods', False)), } print(ET.tostring(xmlify.xmlify(parts)).decode())
('d', date(2003, 12, 21)), ('DT', date), ('L', [1, '2']), ('T', (None, 3, True)), ('S', set([0, '0'])), ('D', { 'x': [1], (2, True): 4.7 }), ('C', Classic), ('N', NewClass), ('CI', Classic('hey')), ('NI', NewClass('yo')), ('IN', WithInitArgs()), ('GS', WithGetState()), ('SL', WithSlots(3.14, False)), ] get = dict(obj).__getitem__ obj.append(('RF', (get('L'), { get('T'): (get('S'), get('u')) }, [get('CI'), get('D'), get('d')]))) return obj if __name__ == '__main__': from xml.dom.ext import PrettyPrint PrettyPrint(xmlify(test())) #import gnosis.xml.pickle #print gnosis.xml.pickle.XML_Pickler().dumps(Foo())
('d' , date(2003,12,21)), ('DT' , date), ('L' , [1,'2']), ('T' , (None,3,True)), ('S' , set([0,'0'])), ('D' , {'x':[1], (2,True):4.7}), ('C' , Classic), ('N' , NewClass), ('CI' , Classic('hey')), ('NI' , NewClass('yo')), ('IN' , WithInitArgs()), ('GS' , WithGetState()), ('SL' , WithSlots(3.14, False)), ] get = dict(obj).__getitem__ obj.append(('RF' , (get('L'), {get('T') : (get('S'), get('u'))}, [get('CI'), get('D'), get('d')] ))) return obj if __name__ == '__main__': from xml.dom.ext import PrettyPrint PrettyPrint(xmlify(test())) #import gnosis.xml.pickle #print gnosis.xml.pickle.XML_Pickler().dumps(Foo())