PageRenderTime 381ms CodeModel.GetById 175ms app.highlight 2ms RepoModel.GetById 202ms app.codeStats 0ms

/src/org/ooc/frontend/model/interfaces/MustBeResolved.java

http://github.com/nddrylliog/ooc
Java | 21 lines | 13 code | 5 blank | 3 comment | 0 complexity | a6c11e19a9a92b606afe210a1761d65a MD5 | raw file
 1package org.ooc.frontend.model.interfaces;
 2
 3import org.ooc.frontend.model.Node;
 4import org.ooc.frontend.model.NodeList;
 5import org.ooc.middle.hobgoblins.Resolver;
 6
 7public interface MustBeResolved {
 8
 9	public static enum Response {
10		OK, /** means resolve() doesn't need to be called ever again */
11		RESTART, /** means the AST has been changed significantly and the Resolved must start over again */
12		LOOP, /** means resolve() is counting on other nodes to resolve before trying again */
13	}
14	
15	/**
16	 * @return true if @link {@link Resolver} should do one more run, false otherwise.
17	 */
18	public Response resolve(NodeList<Node> stack, Resolver res, boolean fatal);
19	public boolean isResolved();
20	
21}