Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.memoire.foo
Class FooSymbol  view FooSymbol download FooSymbol.java

java.lang.Object
  extended bycom.memoire.foo.FooSymbol
All Implemented Interfaces:
FooEval

public class FooSymbol
extends java.lang.Object
implements FooEval


Field Summary
private  java.lang.String name_
           
private static FooCategory pkg_
           
private static java.util.Hashtable SYMBOLS
           
private static java.util.Hashtable THREADS
           
 
Constructor Summary
private FooSymbol(java.lang.String _name)
           
 
Method Summary
 boolean boundMsg()
           
(package private) static void create_local(java.lang.String _name, java.lang.Object _new)
           
static FooSymbol create(java.lang.String _name)
           
 boolean equals(java.lang.Object _o)
          Determine whether this Object is semantically equal to another Object.
 java.lang.Object eval()
           
(package private) static void forget_local(java.lang.String _name, java.lang.Object _old)
           
(package private) static java.lang.Object get_global(java.lang.String _name)
           
(package private) static java.lang.Object get_local(java.lang.String _name)
           
(package private) static java.lang.Object get_raw(java.lang.String _name)
           
 java.lang.String getName()
           
 java.lang.Object getValue()
           
static java.lang.Object getValue(java.lang.String _name)
           
private static java.lang.Object getValue0(java.lang.String _name)
           
 int hashCode()
          Get a value that represents this Object, as uniquely as possible within the confines of an int.
static FooCategory init()
           
(package private) static void list_raw()
           
 java.lang.Object localMsg(java.lang.Object[] _body)
           
(package private) static void put_raw(java.lang.String _name, java.lang.Object _value)
           
(package private) static void set_global(java.lang.String _name, java.lang.Object _new)
           
 void setDynamicValue(java.lang.Object _value)
           
 void setValue(java.lang.Object _value)
           
static void setValue(java.lang.String _name, java.lang.Object _value)
           
 java.lang.String toSource()
           
 java.lang.String toString()
          Convert this Object to a human-readable String.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

pkg_

private static FooCategory pkg_

SYMBOLS

private static java.util.Hashtable SYMBOLS

THREADS

private static java.util.Hashtable THREADS

name_

private java.lang.String name_
Constructor Detail

FooSymbol

private FooSymbol(java.lang.String _name)
Method Detail

init

public static final FooCategory init()

hashCode

public int hashCode()
Description copied from class: java.lang.Object
Get a value that represents this Object, as uniquely as possible within the confines of an int.

There are some requirements on this method which subclasses must follow:

  • Semantic equality implies identical hashcodes. In other words, if a.equals(b) is true, then a.hashCode() == b.hashCode() must be as well. However, the reverse is not necessarily true, and two objects may have the same hashcode without being equal.
  • It must be consistent. Whichever value o.hashCode() returns on the first invocation must be the value returned on all later invocations as long as the object exists. Notice, however, that the result of hashCode may change between separate executions of a Virtual Machine, because it is not invoked on the same object.

Notice that since hashCode is used in java.util.Hashtable and other hashing classes, a poor implementation will degrade the performance of hashing (so don't blindly implement it as returning a constant!). Also, if calculating the hash is time-consuming, a class may consider caching the results.

The default implementation returns System.identityHashCode(this)


equals

public boolean equals(java.lang.Object _o)
Description copied from class: java.lang.Object
Determine whether this Object is semantically equal to another Object.

There are some fairly strict requirements on this method which subclasses must follow:

  • It must be transitive. If a.equals(b) and b.equals(c), then a.equals(c) must be true as well.
  • It must be symmetric. a.equals(b) and b.equals(a) must have the same value.
  • It must be reflexive. a.equals(a) must always be true.
  • It must be consistent. Whichever value a.equals(b) returns on the first invocation must be the value returned on all later invocations.
  • a.equals(null) must be false.
  • It must be consistent with hashCode(). That is, a.equals(b) must imply a.hashCode() == b.hashCode(). The reverse is not true; two objects that are not equal may have the same hashcode, but that has the potential to harm hashing performance.

This is typically overridden to throw a java.lang.ClassCastException if the argument is not comparable to the class performing the comparison, but that is not a requirement. It is legal for a.equals(b) to be true even though a.getClass() != b.getClass(). Also, it is typical to never cause a java.lang.NullPointerException.

In general, the Collections API (java.util) use the equals method rather than the == operator to compare objects. However, java.util.IdentityHashMap is an exception to this rule, for its own good reasons.

The default implementation returns this == o.


setValue

public void setValue(java.lang.Object _value)

setDynamicValue

public void setDynamicValue(java.lang.Object _value)

getValue

public java.lang.Object getValue()

eval

public java.lang.Object eval()
Specified by:
eval in interface FooEval

boundMsg

public boolean boundMsg()

localMsg

public java.lang.Object localMsg(java.lang.Object[] _body)

getName

public java.lang.String getName()

toString

public java.lang.String toString()
Description copied from class: java.lang.Object
Convert this Object to a human-readable String. There are no limits placed on how long this String should be or what it should contain. We suggest you make it as intuitive as possible to be able to place it into System.out.println() 55 and such.

It is typical, but not required, to ensure that this method never completes abruptly with a java.lang.RuntimeException.

This method will be called when performing string concatenation with this object. If the result is null, string concatenation will instead use "null".

The default implementation returns getClass().getName() + "@" + Integer.toHexString(hashCode()).


create

public static FooSymbol create(java.lang.String _name)

get_raw

static java.lang.Object get_raw(java.lang.String _name)

put_raw

static void put_raw(java.lang.String _name,
                    java.lang.Object _value)

create_local

static void create_local(java.lang.String _name,
                         java.lang.Object _new)

forget_local

static void forget_local(java.lang.String _name,
                         java.lang.Object _old)

get_local

static java.lang.Object get_local(java.lang.String _name)

get_global

static java.lang.Object get_global(java.lang.String _name)

set_global

static void set_global(java.lang.String _name,
                       java.lang.Object _new)

list_raw

static void list_raw()

setValue

public static void setValue(java.lang.String _name,
                            java.lang.Object _value)

getValue0

private static final java.lang.Object getValue0(java.lang.String _name)

getValue

public static java.lang.Object getValue(java.lang.String _name)

toSource

public java.lang.String toSource()