1 /* 2 * The contents of this file are subject to the terms of the Common Development 3 * and Distribution License (the License). You may not use this file except in 4 * compliance with the License. 5 * 6 * You can obtain a copy of the License at http://www.netbeans.org/cddl.html 7 * or http://www.netbeans.org/cddl.txt. 8 * 9 * When distributing Covered Code, include this CDDL Header Notice in each file 10 * and include the License file at http://www.netbeans.org/cddl.txt. 11 * If applicable, add the following below the CDDL Header, with the fields 12 * enclosed by brackets [] replaced by your own identifying information: 13 * "Portions Copyrighted [year] [name of copyright owner]" 14 * 15 * The Original Software is NetBeans. The Initial Developer of the Original 16 * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun 17 * Microsystems, Inc. All Rights Reserved. 18 */ 19 package org.netbeans.lib.java.parser; 20 21 /** 22 * 23 * @author tball 24 */ 25 public interface ASTContext { 26 ASTree getRootTree(); 27 String getText(ASTree tree); 28 String getText(Token token); 29 Token getToken(int index); 30 ASTree getParent(ASTree tree); 31 32 /** 33 * Return the -source flag javac would use to compile code in this 34 * context, such as "1.5". 35 */ 36 String getSourceLevel(); 37 38 /** 39 * Return current classpath. Classpath elements are separated by colon. 40 * (e.g. '/opt/projects/module/src:/opt/projects/lib/src') 41 * 42 * @return String classpath elements (roots) separated by colon. 43 */ 44 String getClassPath(); 45 46 /** 47 * Returns object which is responsible for handling errors encountered 48 * while parsing current source file 49 * 50 * @return instance of ErrConsumer or null if errors does not need to be 51 * processed 52 */ 53 ErrConsumer getErrorConsumer(); 54 } 55