aa
|
Public Member Functions | |
String | p () |
final String | toString () |
Package Functions | |
Lambda (Syntax body, String... args) | |
void | add_hm_work (Worklist work) |
void | add_val_work (Syntax child, Worklist work) |
Type | apply (Syntax[] args) |
T2 | debug_find () |
T2 | find () |
boolean | hm (Worklist work) |
boolean | more_work (Worklist work) |
final boolean | more_work_impl (Worklist work) |
final SB | p0 (SB sb, VBitSet dups) |
SB | p1 (SB sb) |
SB | p2 (SB sb, VBitSet dups) |
void | prep_lookup_deps (Ident id) |
int | prep_tree (Syntax par, VStack nongen, Worklist work) |
final void | prep_tree_impl (Syntax par, VStack nongen, Worklist work, T2 t) |
SB | str (SB sb) |
T2 | targ (int i) |
Type | val (Worklist work) |
Package Attributes | |
final String[] | _args |
final Syntax | _body |
final int | _fidx |
Type | _flow |
T2 | _hmt |
VStack | _nongen |
Syntax | _par |
final T2[] | _targs |
final Type[] | _types |
Static Package Attributes | |
static final NonBlockingHashMapLong< Lambda > | FUNS = new NonBlockingHashMapLong<>() |
|
package |
Definition at line 486 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._args, com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.HM.HM.Lambda._fidx, com.cliffc.aa.HM.HM.Syntax._flow, com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.HM.HM.Lambda._types, com.cliffc.aa.HM.HM.Lambda.FUNS, com.cliffc.aa.HM.HM.T2.make_leaf(), com.cliffc.aa.type.BitsFun.new_fidx(), com.cliffc.aa.HM.HM.Lambda.val(), and com.cliffc.aa.type.Type< T extends Type< T >.XSCALAR.
|
package |
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 535 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.HM.HM.Syntax._par, com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.HM.HM.Worklist.addAll(), com.cliffc.aa.HM.HM.Syntax.find(), com.cliffc.aa.HM.HM.Worklist.push(), and com.cliffc.aa.HM.HM.Lambda.targ().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 544 of file HM.java.
References com.cliffc.aa.HM.HM.Worklist.addAll(), and com.cliffc.aa.HM.HM.Syntax.find().
Reimplemented in com.cliffc.aa.HM.HM.Factor, com.cliffc.aa.HM.HM.Str, com.cliffc.aa.HM.HM.Dec, com.cliffc.aa.HM.HM.Add, com.cliffc.aa.HM.HM.Mul, com.cliffc.aa.HM.HM.NotNil, com.cliffc.aa.HM.HM.IsEmpty, com.cliffc.aa.HM.HM.EQ0, com.cliffc.aa.HM.HM.EQ, com.cliffc.aa.HM.HM.If, com.cliffc.aa.HM.HM.Triple, com.cliffc.aa.HM.HM.Pair, com.cliffc.aa.HM.HM.Pair1.Pair1X, and com.cliffc.aa.HM.HM.Pair1.
Definition at line 543 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, and com.cliffc.aa.HM.HM.Syntax._flow.
|
packageinherited |
Definition at line 348 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax._hmt, and com.cliffc.aa.HM.HM.T2.debug_find().
Referenced by com.cliffc.aa.HM.HM.hm().
|
packageinherited |
Definition at line 344 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax._hmt, and com.cliffc.aa.HM.HM.T2.find().
Referenced by com.cliffc.aa.HM.HM.Lambda.add_hm_work(), com.cliffc.aa.HM.HM.Let.add_hm_work(), com.cliffc.aa.HM.HM.PrimSyn.add_hm_work(), com.cliffc.aa.HM.HM.Lambda.add_val_work(), com.cliffc.aa.HM.HM.Let.add_val_work(), com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.Pair1.Pair1X.apply(), com.cliffc.aa.HM.HM.Ident.hm(), com.cliffc.aa.HM.HM.Lambda.hm(), com.cliffc.aa.HM.HM.Apply.hm(), com.cliffc.aa.HM.HM.Root.hm(), com.cliffc.aa.HM.HM.Struct.hm(), com.cliffc.aa.HM.HM.Field.hm(), com.cliffc.aa.HM.HM.PrimSyn.hm(), com.cliffc.aa.HM.HM.If.hm(), com.cliffc.aa.HM.HM.NotNil.hm(), com.cliffc.aa.HM.HM.Let.prep_tree(), com.cliffc.aa.HM.HM.Struct.prep_tree(), com.cliffc.aa.HM.HM.NotNil.prep_tree(), com.cliffc.aa.HM.HM.Apply.val(), com.cliffc.aa.HM.HM.Root.val(), and com.cliffc.aa.HM.HM.T2.walk_types_in().
|
package |
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.NotNil, com.cliffc.aa.HM.HM.If, and com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 517 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.HM.HM.Lambda._fidx, com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.HM.HM.T2.args(), com.cliffc.aa.HM.HM.Syntax.find(), com.cliffc.aa.HM.HM.T2.is_err(), com.cliffc.aa.HM.HM.T2.is_fun(), com.cliffc.aa.type.BitsFun.make0(), com.cliffc.aa.HM.HM.T2.make_fun(), com.cliffc.aa.HM.HM.Lambda.targ(), and com.cliffc.aa.HM.HM.T2.unify().
|
package |
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 558 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.HM.HM.Syntax.more_work(), and com.cliffc.aa.HM.HM.Syntax.more_work_impl().
|
packageinherited |
Definition at line 381 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax._flow, com.cliffc.aa.HM.HM.DO_GCP, com.cliffc.aa.HM.HM.DO_HM, com.cliffc.aa.HM.HM.Worklist.has(), com.cliffc.aa.HM.HM.Syntax.hm(), and com.cliffc.aa.HM.HM.Syntax.val().
Referenced by com.cliffc.aa.HM.HM.Con.more_work(), com.cliffc.aa.HM.HM.Ident.more_work(), com.cliffc.aa.HM.HM.Lambda.more_work(), com.cliffc.aa.HM.HM.Let.more_work(), com.cliffc.aa.HM.HM.Apply.more_work(), com.cliffc.aa.HM.HM.Struct.more_work(), com.cliffc.aa.HM.HM.Field.more_work(), and com.cliffc.aa.HM.HM.PrimSyn.more_work().
|
inherited |
Definition at line 393 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax.p0(), and com.cliffc.aa.util.SB.toString().
Definition at line 394 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax._flow, com.cliffc.aa.HM.HM.Syntax._hmt, com.cliffc.aa.util.VBitSet.clr(), com.cliffc.aa.util.SB.di(), com.cliffc.aa.HM.HM.DO_GCP, com.cliffc.aa.HM.HM.DO_HM, com.cliffc.aa.HM.HM.T2.get_dups(), com.cliffc.aa.util.SB.i(), com.cliffc.aa.util.SB.ii(), com.cliffc.aa.util.SB.nl(), com.cliffc.aa.util.SB.p(), com.cliffc.aa.HM.HM.Syntax.p1(), com.cliffc.aa.HM.HM.Syntax.p2(), com.cliffc.aa.type.Type< T extends Type< T >.str(), and com.cliffc.aa.HM.HM.T2.str().
Referenced by com.cliffc.aa.HM.HM.Syntax.p(), com.cliffc.aa.HM.HM.Lambda.p2(), com.cliffc.aa.HM.HM.Let.p2(), com.cliffc.aa.HM.HM.Apply.p2(), com.cliffc.aa.HM.HM.Struct.p2(), and com.cliffc.aa.HM.HM.Field.p2().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 505 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._args, com.cliffc.aa.HM.HM.Lambda._types, com.cliffc.aa.HM.HM.DO_GCP, com.cliffc.aa.HM.HM.DO_HM, com.cliffc.aa.util.SB.i(), com.cliffc.aa.util.SB.nl(), com.cliffc.aa.util.SB.p(), com.cliffc.aa.HM.HM.Lambda.targ(), and com.cliffc.aa.HM.HM.Syntax.toString().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 515 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, and com.cliffc.aa.HM.HM.Syntax.p0().
|
package |
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Definition at line 554 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._args, com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.util.Util.eq(), and com.cliffc.aa.HM.HM.T2.push_update().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.NotNil, and com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 548 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.HM.HM.T2.make_leaf(), com.cliffc.aa.HM.HM.Syntax.prep_tree(), com.cliffc.aa.HM.HM.Syntax.prep_tree_impl(), and com.cliffc.aa.HM.HM.Lambda.targ().
|
packageinherited |
Definition at line 370 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax._flow, com.cliffc.aa.HM.HM.Syntax._hmt, com.cliffc.aa.HM.HM.Syntax._nongen, com.cliffc.aa.HM.HM.Syntax._par, com.cliffc.aa.HM.HM.Worklist.push(), and com.cliffc.aa.type.Type< T extends Type< T >.XSCALAR.
Referenced by com.cliffc.aa.HM.HM.Con.prep_tree(), com.cliffc.aa.HM.HM.Ident.prep_tree(), com.cliffc.aa.HM.HM.Lambda.prep_tree(), com.cliffc.aa.HM.HM.Let.prep_tree(), com.cliffc.aa.HM.HM.Apply.prep_tree(), com.cliffc.aa.HM.HM.Struct.prep_tree(), com.cliffc.aa.HM.HM.Field.prep_tree(), and com.cliffc.aa.HM.HM.PrimSyn.prep_tree().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Reimplemented in com.cliffc.aa.HM.HM.PrimSyn.
Definition at line 500 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._args, com.cliffc.aa.HM.HM.Lambda._body, com.cliffc.aa.util.SB.p(), and com.cliffc.aa.HM.HM.Syntax.str().
|
package |
Definition at line 516 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._targs, com.cliffc.aa.HM.HM.T2.find(), and com.cliffc.aa.HM.HM.Lambda.targ().
Referenced by com.cliffc.aa.HM.HM.Lambda.add_hm_work(), com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.Lambda.hm(), com.cliffc.aa.HM.HM.PrimSyn.hm(), com.cliffc.aa.HM.HM.If.hm(), com.cliffc.aa.HM.HM.NotNil.hm(), com.cliffc.aa.HM.HM.Lambda.p1(), com.cliffc.aa.HM.HM.Ident.prep_tree(), com.cliffc.aa.HM.HM.Lambda.prep_tree(), com.cliffc.aa.HM.HM.Lambda.targ(), and com.cliffc.aa.HM.HM.Root.val().
|
inherited |
Definition at line 390 of file HM.java.
References com.cliffc.aa.HM.HM.Syntax.str(), and com.cliffc.aa.util.SB.toString().
Referenced by com.cliffc.aa.HM.HM.Lambda.p1().
Reimplemented from com.cliffc.aa.HM.HM.Syntax.
Definition at line 541 of file HM.java.
References com.cliffc.aa.HM.HM.Lambda._args, com.cliffc.aa.HM.HM.Lambda._fidx, com.cliffc.aa.type.Type< T extends Type< T >.ANY, and com.cliffc.aa.type.TypeFunPtr.make().
Referenced by com.cliffc.aa.HM.HM.NotNil.apply(), and com.cliffc.aa.HM.HM.Lambda.Lambda().
|
package |
Definition at line 480 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.Lambda.p1(), com.cliffc.aa.HM.HM.Lambda.prep_lookup_deps(), com.cliffc.aa.HM.HM.Ident.prep_tree(), com.cliffc.aa.HM.HM.Lambda.str(), and com.cliffc.aa.HM.HM.Lambda.val().
|
package |
Definition at line 481 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Lambda.add_hm_work(), com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.Lambda.apply(), com.cliffc.aa.HM.HM.Lambda.hm(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.Lambda.more_work(), com.cliffc.aa.HM.HM.Lambda.p2(), com.cliffc.aa.HM.HM.Lambda.prep_tree(), com.cliffc.aa.HM.HM.Lambda.str(), com.cliffc.aa.HM.HM.Root.val(), and com.cliffc.aa.HM.HM.T2.walk_types_in().
|
package |
Definition at line 484 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Lambda.hm(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.PrimSyn.PrimSyn(), and com.cliffc.aa.HM.HM.Lambda.val().
|
packageinherited |
Definition at line 351 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.Lambda.apply(), com.cliffc.aa.HM.HM.Pair1.apply(), com.cliffc.aa.HM.HM.Pair1.Pair1X.apply(), com.cliffc.aa.HM.HM.Pair.apply(), com.cliffc.aa.HM.HM.Triple.apply(), com.cliffc.aa.HM.HM.If.apply(), com.cliffc.aa.HM.HM.EQ.apply(), com.cliffc.aa.HM.HM.EQ0.apply(), com.cliffc.aa.HM.HM.IsEmpty.apply(), com.cliffc.aa.HM.HM.NotNil.apply(), com.cliffc.aa.HM.HM.Mul.apply(), com.cliffc.aa.HM.HM.Add.apply(), com.cliffc.aa.HM.HM.Dec.apply(), com.cliffc.aa.HM.HM.Str.apply(), com.cliffc.aa.HM.HM.Factor.apply(), com.cliffc.aa.HM.HM.Root.flow_type(), com.cliffc.aa.HM.HM.hm(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.Syntax.more_work_impl(), com.cliffc.aa.HM.HM.Syntax.p0(), com.cliffc.aa.HM.HM.Syntax.prep_tree_impl(), com.cliffc.aa.HM.HM.Ident.val(), com.cliffc.aa.HM.HM.Let.val(), com.cliffc.aa.HM.HM.Apply.val(), com.cliffc.aa.HM.HM.Root.val(), com.cliffc.aa.HM.HM.Struct.val(), com.cliffc.aa.HM.HM.Field.val(), and com.cliffc.aa.HM.HM.T2.walk_types_in().
|
packageinherited |
Definition at line 343 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Syntax.debug_find(), com.cliffc.aa.HM.HM.Syntax.find(), com.cliffc.aa.HM.HM.hm(), com.cliffc.aa.HM.HM.Syntax.p0(), com.cliffc.aa.HM.HM.Let.prep_tree(), com.cliffc.aa.HM.HM.PrimSyn.prep_tree(), com.cliffc.aa.HM.HM.Syntax.prep_tree_impl(), com.cliffc.aa.HM.HM.PrimSyn.PrimSyn(), com.cliffc.aa.HM.TestHM.run(), com.cliffc.aa.HM.TestHM9.run(), com.cliffc.aa.HM.TestHM.test05(), com.cliffc.aa.HM.TestHM9.test05(), com.cliffc.aa.HM.TestHM.test06(), com.cliffc.aa.HM.TestHM9.test06(), com.cliffc.aa.HM.TestHM.test14(), com.cliffc.aa.HM.TestHM9.test14(), com.cliffc.aa.HM.TestHM.test18(), com.cliffc.aa.HM.TestHM9.test18(), com.cliffc.aa.HM.TestHM.test20(), com.cliffc.aa.HM.TestHM9.test20(), com.cliffc.aa.HM.TestHM9.test32(), com.cliffc.aa.HM.TestHM.test32(), com.cliffc.aa.HM.TestHM9.test33(), com.cliffc.aa.HM.TestHM.test33(), com.cliffc.aa.HM.TestHM9.test34(), com.cliffc.aa.HM.TestHM.test34(), com.cliffc.aa.HM.TestHM9.test36(), com.cliffc.aa.HM.TestHM.test36(), com.cliffc.aa.HM.TestHM.test39(), com.cliffc.aa.HM.TestHM9.test39(), com.cliffc.aa.HM.TestHM.test40(), com.cliffc.aa.HM.TestHM9.test40(), com.cliffc.aa.HM.TestHM.test41(), com.cliffc.aa.HM.TestHM9.test41(), com.cliffc.aa.HM.TestHM.test42(), com.cliffc.aa.HM.TestHM9.test42(), com.cliffc.aa.HM.TestHM.test43(), com.cliffc.aa.HM.TestHM9.test43(), com.cliffc.aa.HM.TestHM.test44(), com.cliffc.aa.HM.TestHM9.test44(), com.cliffc.aa.HM.TestHM.test45(), com.cliffc.aa.HM.TestHM9.test45(), com.cliffc.aa.HM.TestHM.test49(), com.cliffc.aa.HM.TestHM9.test49(), com.cliffc.aa.HM.TestHM.test50(), com.cliffc.aa.HM.TestHM9.test50(), com.cliffc.aa.HM.TestHM.test51(), com.cliffc.aa.HM.TestHM.test52(), com.cliffc.aa.HM.TestHM.test55(), com.cliffc.aa.HM.TestHM.test56(), and com.cliffc.aa.HM.TestHM.test57().
|
packageinherited |
Definition at line 342 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Ident.add_hm_work(), com.cliffc.aa.HM.HM.Ident.hm(), and com.cliffc.aa.HM.HM.Syntax.prep_tree_impl().
|
packageinherited |
Definition at line 341 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Ident.add_hm_work(), com.cliffc.aa.HM.HM.Lambda.add_hm_work(), com.cliffc.aa.HM.HM.Let.add_hm_work(), com.cliffc.aa.HM.HM.Apply.add_hm_work(), com.cliffc.aa.HM.HM.Struct.add_hm_work(), com.cliffc.aa.HM.HM.Field.add_hm_work(), com.cliffc.aa.HM.HM.PrimSyn.add_hm_work(), com.cliffc.aa.HM.HM.hm(), com.cliffc.aa.HM.HM.NotNil.hm(), com.cliffc.aa.HM.HM.Ident.prep_tree(), and com.cliffc.aa.HM.HM.Syntax.prep_tree_impl().
|
package |
Definition at line 482 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Lambda.add_hm_work(), com.cliffc.aa.HM.HM.Pair1.Pair1X.apply(), com.cliffc.aa.HM.HM.Lambda.hm(), com.cliffc.aa.HM.HM.PrimSyn.hm(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.Lambda.prep_lookup_deps(), com.cliffc.aa.HM.HM.Lambda.prep_tree(), com.cliffc.aa.HM.HM.PrimSyn.PrimSyn(), com.cliffc.aa.HM.HM.Lambda.targ(), and com.cliffc.aa.HM.HM.T2.walk_types_in().
|
package |
Definition at line 483 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.If.hm(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.Lambda.p1(), and com.cliffc.aa.HM.HM.Root.val().
|
staticpackage |
Definition at line 479 of file HM.java.
Referenced by com.cliffc.aa.HM.HM.Root.add_sig(), com.cliffc.aa.HM.HM.Apply.add_val_work(), com.cliffc.aa.HM.HM.Lambda.Lambda(), com.cliffc.aa.HM.HM.reset(), com.cliffc.aa.HM.HM.Apply.val(), com.cliffc.aa.HM.HM.Root.val(), and com.cliffc.aa.HM.HM.T2.walk_types_in().