示例#1
0
def read_map(rdr):
    cnt = read_raw_integer(rdr)
    acc = EMPTY_MAP
    for x in range(cnt):
        acc = rt._assoc(acc, read_obj(rdr), read_obj(rdr))

    return acc
示例#2
0
文件: reader.py 项目: bendlas/pixie
def read_map(rdr):
    cnt = read_raw_integer(rdr)
    acc = EMPTY_MAP
    for x in range(cnt):
        acc = rt._assoc(acc, read_obj(rdr), read_obj(rdr))

    return acc
示例#3
0
文件: reader.py 项目: foodhype/pixie
    def invoke(self, rdr, ch):
        acc = EMPTY_MAP
        while True:
            eat_whitespace(rdr)
            ch = rdr.read()
            if ch == u"}":
                return acc

            rdr.unread(ch)
            k = read(rdr, True)
            v = read(rdr, False)
            acc = rt._assoc(acc, k, v)
        return acc
示例#4
0
    def invoke(self, rdr, ch):
        acc = EMPTY_MAP
        while True:
            eat_whitespace(rdr)
            ch = rdr.read()
            if ch == u"}":
                return acc

            rdr.unread(ch)
            k = read(rdr, True)
            v = read(rdr, False)
            acc = rt._assoc(acc, k, v)
        return acc
示例#5
0
文件: reader.py 项目: rowhit/pixie
    def invoke(self, rdr, ch):
        acc = EMPTY_MAP
        while True:
            try:
                eat_whitespace(rdr)
            except EOFError:
                throw_syntax_error_with_data(rdr, u"Unmatched map open '{'")

            ch = rdr.read()
            if ch == u"}":
                return acc

            rdr.unread()
            itm = read_inner(rdr, True, always_return_form=False)
            if itm != rdr:
                k = itm
                itm = rdr
                while itm == rdr:
                    itm = read_inner(rdr, False, always_return_form=False)
                v = itm
                acc = rt._assoc(acc, k, v)

        return acc
示例#6
0
def merge_fn(acc, x):
    return rt._assoc(acc, rt._key(x), rt._val(x))
示例#7
0
文件: code.py 项目: jmglov/pixie
 def set_var_value(self, var, val):
     cur_frame = self.current_frame()
     self.pop_binding_frame()
     self._vars = rt.cons(rt._assoc(cur_frame, var, val), self._vars)
示例#8
0
def merge_fn(acc, x):
    return rt._assoc(acc, rt._key(x), rt._val(x))
示例#9
0
文件: code.py 项目: discoverfly/pixie
 def set_var_value(self, var, val):
     cur_frame = self.current_frame()
     self.pop_binding_frame()
     self._vars = rt.cons(rt._assoc(cur_frame, var, val), self._vars)