MCPcopy Index your code
hub / github.com/clojure/clojure / addAlias

Method addAlias

src/jvm/clojure/lang/Namespace.java:246–260  ·  view source on GitHub ↗
(Symbol alias, Namespace ns)

Source from the content-addressed store, hash-verified

244}
245
246public void addAlias(Symbol alias, Namespace ns){
247 if (alias == null || ns == null)
248 throw new NullPointerException("Expecting Symbol + Namespace");
249 IPersistentMap map = getAliases();
250 while(!map.containsKey(alias))
251 {
252 IPersistentMap newMap = map.assoc(alias, ns);
253 aliases.compareAndSet(map, newMap);
254 map = getAliases();
255 }
256 // you can rebind an alias, but only to the initially-aliased namespace.
257 if(!map.valAt(alias).equals(ns))
258 throw new IllegalStateException("Alias " + alias + " already exists in namespace "
259 + name + ", aliasing " + map.valAt(alias));
260}
261
262public void removeAlias(Symbol alias) {
263 IPersistentMap map = getAliases();

Callers

nothing calls this directly

Calls 6

getAliasesMethod · 0.95
assocMethod · 0.95
containsKeyMethod · 0.65
compareAndSetMethod · 0.65
valAtMethod · 0.65
equalsMethod · 0.45

Tested by

no test coverage detected