aa
com.cliffc.aa.HM.HM7.Worklist Class Reference
Collaboration diagram for com.cliffc.aa.HM.HM7.Worklist:
[legend]

Public Member Functions

void addAll (Ary<? extends Syntax > ss)
 
boolean has (Syntax s)
 
int len ()
 
Syntax pop ()
 
void push (Syntax s)
 
String toString ()
 

Public Attributes

int _cnt
 

Private Attributes

final Ary< Syntax_ary = new Ary<>(Syntax.class)
 
final HashSet< Syntax_work = new HashSet<>()
 

Detailed Description

Definition at line 200 of file HM7.java.

Member Function Documentation

◆ addAll()

void com.cliffc.aa.HM.HM7.Worklist.addAll ( Ary<? extends Syntax ss)

Definition at line 209 of file HM7.java.

209 { if( ss != null ) for( Syntax s : ss ) push(s); }

References com.cliffc.aa.HM.HM7.Worklist.push().

Referenced by com.cliffc.aa.HM.HM7.T2.add_deps_work_impl(), com.cliffc.aa.HM.HM7.T2.add_fld(), com.cliffc.aa.HM.HM7.Lambda.add_occurs(), com.cliffc.aa.HM.HM7.Let.add_occurs(), and com.cliffc.aa.HM.HM7.Apply.hm().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ has()

boolean com.cliffc.aa.HM.HM7.Worklist.has ( Syntax  s)

Definition at line 208 of file HM7.java.

208 { return _work.contains(s); }

References com.cliffc.aa.HM.HM7.Worklist._work.

Referenced by com.cliffc.aa.HM.HM7.Syntax.more_work_impl().

Here is the caller graph for this function:

◆ len()

int com.cliffc.aa.HM.HM7.Worklist.len ( )

Definition at line 204 of file HM7.java.

204 { return _ary.len(); }

References com.cliffc.aa.HM.HM7.Worklist._ary.

Referenced by com.cliffc.aa.HM.HM7.hm().

Here is the caller graph for this function:

◆ pop()

Syntax com.cliffc.aa.HM.HM7.Worklist.pop ( )

Definition at line 206 of file HM7.java.

206 { Syntax s = _ary.pop();_cnt++; _work.remove(s); return s; }

References com.cliffc.aa.HM.HM7.Worklist._ary, com.cliffc.aa.HM.HM7.Worklist._cnt, and com.cliffc.aa.HM.HM7.Worklist._work.

Referenced by com.cliffc.aa.HM.HM7.hm().

Here is the caller graph for this function:

◆ push()

void com.cliffc.aa.HM.HM7.Worklist.push ( Syntax  s)

Definition at line 205 of file HM7.java.

205 { if( !_work.contains(s) ) _work.add(_ary.push(s)); }

References com.cliffc.aa.HM.HM7.Worklist._ary, and com.cliffc.aa.HM.HM7.Worklist._work.

Referenced by com.cliffc.aa.HM.HM7.Lambda.add_kids(), com.cliffc.aa.HM.HM7.Let.add_kids(), com.cliffc.aa.HM.HM7.Apply.add_kids(), com.cliffc.aa.HM.HM7.Struct.add_kids(), com.cliffc.aa.HM.HM7.Field.add_kids(), com.cliffc.aa.HM.HM7.Worklist.addAll(), com.cliffc.aa.HM.HM7.hm(), and com.cliffc.aa.HM.HM7.Syntax.prep_tree_impl().

Here is the caller graph for this function:

◆ toString()

String com.cliffc.aa.HM.HM7.Worklist.toString ( )

Definition at line 210 of file HM7.java.

210 { return _ary.toString(); }

References com.cliffc.aa.HM.HM7.Worklist._ary.

Member Data Documentation

◆ _ary

final Ary<Syntax> com.cliffc.aa.HM.HM7.Worklist._ary = new Ary<>(Syntax.class)
private

◆ _cnt

int com.cliffc.aa.HM.HM7.Worklist._cnt

Definition at line 201 of file HM7.java.

Referenced by com.cliffc.aa.HM.HM7.hm(), and com.cliffc.aa.HM.HM7.Worklist.pop().

◆ _work

final HashSet<Syntax> com.cliffc.aa.HM.HM7.Worklist._work = new HashSet<>()
private

The documentation for this class was generated from the following file:
com.cliffc.aa.HM.HM7.Worklist._cnt
int _cnt
Definition: HM7.java:201
com.cliffc.aa.HM.HM7.Worklist.push
void push(Syntax s)
Definition: HM7.java:205
com.cliffc.aa.HM.HM7.Worklist._work
final HashSet< Syntax > _work
Definition: HM7.java:203
com.cliffc.aa.HM.HM7.Worklist._ary
final Ary< Syntax > _ary
Definition: HM7.java:202