Files
pylisp/core/primitives/symbol.py
T

26 lines
465 B
Python

from functools import lru_cache
class Symbol:
_name: str
def __init__(self, name):
self._name = name
@property
def name(self):
return self._name
@lru_cache(maxsize=None)
def symbol(name: str) -> Symbol:
return Symbol(name)
def symbolName(sym: Symbol) -> str:
# return sym.name[1:]
return sym.name
def symbolKey(sym: Symbol) -> str:
return sym.name
def isSymbol(obj) -> bool:
return isinstance(obj, Symbol)