Home | History | Annotate | Download | only in src

Lines Matching refs:Interface

39 //   interface ::= UNDETERMINED | VALUE | MODULE(exports)
40 // exports ::= {name : interface, ...}
46 class Interface : public ZoneObject {
51 static Interface* NewValue() {
52 static Interface value_interface(VALUE + FROZEN); // Cached.
56 static Interface* NewUnknown() {
57 return new Interface(NONE);
60 static Interface* NewModule() {
61 return new Interface(MODULE);
68 // interface, otherwise insert unless this is closed.
69 void Add(Handle<String> name, Interface* interface, bool* ok) {
70 DoAdd(name.location(), name->Hash(), interface, ok);
73 // Unify with another interface. If successful, both interface objects will
75 void Unify(Interface* that, bool* ok);
77 // Determine this interface to be a value interface.
83 // Determine this interface to be a module interface.
99 Interface* Lookup(Handle<String> name);
130 Interface* forward_; // Unification link
133 explicit Interface(int flags)
143 Interface* Chase() {
144 Interface* result = this;
150 void DoAdd(void* name, uint32_t hash, Interface* interface, bool* ok);
151 void DoUnify(Interface* that, bool* ok);