diff options
author | Rich Hickey <richhickey@gmail.com> | 2006-08-04 23:21:07 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2006-08-04 23:21:07 +0000 |
commit | ee19adc3e5bc9e5b525dac99e9281f3db30d3ece (patch) | |
tree | 534c9ecffefa6543b0322d72acae09975cb53174 /src/cli/runtime/Var.cs | |
parent | 7e9b97b213b0214238c244eff9389554adcba54e (diff) |
got rid of identity maps
Diffstat (limited to 'src/cli/runtime/Var.cs')
-rw-r--r-- | src/cli/runtime/Var.cs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cli/runtime/Var.cs b/src/cli/runtime/Var.cs index 1ab3b0b1..c4b9e7b9 100644 --- a/src/cli/runtime/Var.cs +++ b/src/cli/runtime/Var.cs @@ -15,7 +15,7 @@ namespace clojure.lang {
public class Var : AFn
{
-public readonly Symbol sym;
public Namespace ns;
public Binding binding;
volatile IPersistentMap threadBindings = PersistentArrayIdentityMap.EMPTY;
volatile int tcount = 0;
internal Var(Symbol sym, Namespace ns)
{
if(sym.GetType() != typeof(Symbol))
throw new ArgumentException("Only simple symbols can be vars");
this.ns = ns;
this.sym = sym;
}
override public String ToString()
{
if(ns == null)
return "#:" + sym;
return ns.name + ":" + sym;
}
public Var bind(Object val)
{
if(binding == null)
+public readonly Symbol sym;
public Namespace ns;
public Binding binding;
volatile IPersistentMap threadBindings = PersistentArrayMap.EMPTY;
volatile int tcount = 0;
internal Var(Symbol sym, Namespace ns)
{
if(sym.GetType() != typeof(Symbol))
throw new ArgumentException("Only simple symbols can be vars");
this.ns = ns;
this.sym = sym;
}
override public String ToString()
{
if(ns == null)
return "#:" + sym;
return ns.name + ":" + sym;
}
public Var bind(Object val)
{
if(binding == null)
binding = new Binding(val);
else
binding.val = val;
return this;
}
public Object getValue()
{
|