com.sri.oaa2.icl
Class ToReadOnly

java.lang.Object
  |
  +--com.sri.oaa2.icl.ToReadOnly
All Implemented Interfaces:
OaaPrologVisitor

public class ToReadOnly
extends java.lang.Object
implements OaaPrologVisitor


Constructor Summary
protected ToReadOnly()
           
 
Method Summary
 IclTerm from(IclTerm t)
          Make an IclTerm readonly.
 IclTerm from(IclTerm t, boolean readOnly)
           
static ToReadOnly getInstance()
          Get an instance of a ToReadOnly object.
 java.lang.Object visit(IclFloat node, java.lang.Object data)
           
 java.lang.Object visit(IclGroup node, java.lang.Object data)
           
 java.lang.Object visit(IclInt node, java.lang.Object data)
           
 java.lang.Object visit(IclList node, java.lang.Object data)
           
 java.lang.Object visit(IclStr node, java.lang.Object data)
           
 java.lang.Object visit(IclStruct node, java.lang.Object data)
           
 java.lang.Object visit(IclTerm node, java.lang.Object data)
           
 java.lang.Object visit(IclVar node, java.lang.Object data)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ToReadOnly

protected ToReadOnly()
Method Detail

visit

public java.lang.Object visit(IclTerm node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclStruct node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclList node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclGroup node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclInt node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclFloat node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclStr node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

visit

public java.lang.Object visit(IclVar node,
                              java.lang.Object data)
Specified by:
visit in interface OaaPrologVisitor

getInstance

public static ToReadOnly getInstance()
Get an instance of a ToReadOnly object. This avoids multiple calls to the constructor. ToReadOnly is thread safe.


from

public IclTerm from(IclTerm t)
Make an IclTerm readonly. This will also make all its children readonly.

Returns:
IclTerm: t as a readonly object

from

public IclTerm from(IclTerm t,
                    boolean readOnly)