Exemple #1
0
def read_atom(reader):
    int_re = re.compile(r"-?[0-9]+$")
    float_re = re.compile(r"-?[0-9][0-9.]*$")
    token = reader.next()
    if re.match(int_re, token): return int(token)
    elif re.match(float_re, token): return int(token)
    elif token[0] == '"': return token[1:-1].replace('\\"', '"')
    elif token[0] == ':': return _keyword(token[1:])
    elif token == "nil": return None
    elif token == "true": return True
    elif token == "false": return False
    else: return _symbol(token)
Exemple #2
0
def read_atom(reader):
    int_re = re.compile(r"-?[0-9]+$")
    float_re = re.compile(r"-?[0-9][0-9.]*$")
    string_re = re.compile(r'"(?:[\\].|[^\\"])*"')
    token = reader.next()
    if re.match(int_re, token): return int(token)
    elif re.match(float_re, token): return int(token)
    elif re.match(string_re, token): return _s2u(_unescape(token[1:-1]))
    elif token[0] == '"': raise Exception("expected '\"', got EOF")
    elif token[0] == ':': return _keyword(token[1:])
    elif token == "nil": return None
    elif token == "true": return True
    elif token == "false": return False
    else: return _symbol(token)
Exemple #3
0
def read_atom(reader):
    int_re = re.compile(r"-?[0-9]+$")
    float_re = re.compile(r"-?[0-9][0-9.]*$")
    token = reader.next()
    if re.match(int_re, token):     return int(token)
    elif re.match(float_re, token): return int(token)
    elif token[0] == '"':
        if token[-1] == '"':        return _s2u(_unescape(token[1:-1]))
        else:                       raise Exception("expected '\"', got EOF")
    elif token[0] == ':':           return _keyword(token[1:])
    elif token == "nil":            return None
    elif token == "true":           return True
    elif token == "false":          return False
    else:                           return _symbol(token)
Exemple #4
0
def read_atom(reader):
    int_re = re.compile(r"-?[0-9]+$")
    float_re = re.compile(r"-?[0-9][0-9.]*$")
    token = reader.next()
    if re.match(int_re, token):
        return int(token)
    elif re.match(float_re, token):
        return int(token)
    elif token[0] == '"':
        return token[1:-1].replace('\\"', '"')
    elif token[0] == ":":
        return _keyword(token[1:])
    elif token == "nil":
        return None
    elif token == "true":
        return True
    elif token == "false":
        return False
    else:
        return _symbol(token)
Exemple #5
0
def keyword(args): return types._keyword(args[0])
def keyword_Q(args): return wrap_tf(types._keyword_Q(args[0]))
Exemple #6
0
def keyword(args):
    return types._keyword(args[0])