org.erights.e.elang.scope
Class PatternMapLink

java.lang.Object
  |
  +--org.erights.e.elang.scope.PatternMap
        |
        +--org.erights.e.elang.scope.PatternMapLink

public class PatternMapLink
extends PatternMap

Untamed: A PatternMap having at least one name => NounPattern binding in the innermost layer.

Built from a single association and a previous PatternMap.

Author:
Ka-Ping Yee

Field Summary
private  String myName
           
private  PatternMap myNextMap
           
private  NounPattern myPattern
           
 
Fields inherited from class org.erights.e.elang.scope.PatternMap
EMPTY
 
Constructor Summary
(package private) PatternMapLink(String name, NounPattern pattern, PatternMap nextMap)
           
 
Method Summary
(package private)  void addNamesTo(FlexSet names)
           
 void assertShadowable(String name)
          Enabled:
 boolean contains(String name)
          Enabled:
 NounPattern getPattern(String name)
          Enabled:
 void replace(String name, NounPattern pattern)
          Enabled:
 
Methods inherited from class org.erights.e.elang.scope.PatternMap
make, namesSet, nested, with
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myNextMap

private final PatternMap myNextMap

myName

private final String myName

myPattern

private NounPattern myPattern
Constructor Detail

PatternMapLink

PatternMapLink(String name,
               NounPattern pattern,
               PatternMap nextMap)
Method Detail

getPattern

public NounPattern getPattern(String name)
Enabled:

Specified by:
getPattern in class PatternMap

contains

public boolean contains(String name)
Enabled:

Specified by:
contains in class PatternMap

addNamesTo

void addNamesTo(FlexSet names)
Specified by:
addNamesTo in class PatternMap

replace

public void replace(String name,
                    NounPattern pattern)
Enabled:

Specified by:
replace in class PatternMap

assertShadowable

public void assertShadowable(String name)
Enabled:

Specified by:
assertShadowable in class PatternMap


comments?