Go to the documentation of this file. 1 package com.cliffc.aa.type;
6 import java.util.function.Predicate;
18 @SuppressWarnings(
"unchecked")
19 protected O
init(
byte type, String name,
boolean any,
boolean use) {
20 super.init(type,name);
27 @Override
public boolean equals( Object o ) {
28 if(
this==o )
return true;
29 if( !(o instanceof
TypeObj) || !super.equals(o) )
return false;
39 private static TypeObj make( String name,
boolean any,
boolean use ) {
51 @SuppressWarnings(
"unchecked")
70 if(
this==
ISUSED ||
this==
OBJ )
return this;
79 @Override
public boolean is_con() {
return false; }
80 @Override
public boolean must_nil() {
return false; }
81 @Override
public boolean may_nil() {
return false; }
82 @Override
public void walk( Predicate<Type> p ) { p.test(
this); }
void walk(Predicate< Type > p)
Memory type; the state of all of memory; memory edges order memory ops.
an implementation of language AA
static final TypeObj[] TYPES
O init(byte type, String name, boolean any, boolean use)
TypeObj update(TypeInt idx, Type val)
static final TypeObj XOBJ
static final TypeObj UNUSED
TypeObj remove_other_flds(String fld, Type live)
static final TypeObj ISUSED
SB str(SB sb, VBitSet dups, TypeMem mem, boolean debug)
Tight/tiny StringBuilder wrapper.
boolean cycle_equals(Type o)
TypeObj update(TypeInt idx, Type val)
TypeObj update(Access fin, String fld, Type val)
static final Pool[] POOLS
static TypeObj make(String name, boolean any, boolean use)