blob: c4362c6afa1e733277c650e660db5eb7ad453858 [file] [log] [blame]
/**********************************************************************
* This file is part of "Object Teams Development Tooling"-Software
*
* Copyright 2003, 2006 Fraunhofer Gesellschaft, Munich, Germany,
* for its Fraunhofer Institute for Computer Architecture and Software
* Technology (FIRST), Berlin, Germany and Technical University Berlin,
* Germany.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
* $Id: ITranslationStates.java 23416 2010-02-03 19:59:31Z stephan $
*
* Please visit http://www.eclipse.org/objectteams for updates and contact.
*
* Contributors:
* Fraunhofer FIRST - Initial API and implementation
* Technical University Berlin - Initial API and implementation
**********************************************************************/
package org.eclipse.objectteams.otdt.internal.core.compiler.control;
/**
* Constants for the translation states of classes.
* @author stephan
* @version $Id: ITranslationStates.java 23416 2010-02-03 19:59:31Z stephan $
*/
public interface ITranslationStates {
public static final int STATE_NONE = 0;
/**
* IMPLEMENTOR: RoleSplitter
* PRE: parsed (maybe diet)
* BEFORE: LookupEnvironment.buildTypeBindings()
* This way, buildTypeBindings can faithfully share role models
* of class- and interface parts.
*/
public static final int STATE_ROLE_FILES_LINKED = 1;//LookupEnv.
public static final int STATE_ROLES_SPLIT = 2;//RoleSplitter & LookupEnv.
public static final int STATE_BINDINGS_BUILT = 3;//LookupEnvironment
// the next for states correspond to LookupEnvironment.{BUILD_TYPE_HIERARCHY .. BUILD_FIELDS_AND_METHODS}:
public static final int STATE_LENV_BUILD_TYPE_HIERARCHY= 4;//LookupEnvironment & Deps.
public static final int STATE_LENV_CHECK_AND_SET_IMPORTS= 5;//LookupEnvironment & Deps.
public static final int STATE_LENV_CONNECT_TYPE_HIERARCHY= 6;//LookupEnvironment & Deps. & CopyInheritance
public static final int STATE_LENV_DONE_FIELDS_AND_METHODS= 7;//LookupEnvironment & Deps.
public static final int STATE_ROLES_LINKED = 8;//LookupEnvironment & RoleSplitter
public static final int STATE_METHODS_PARSED = 9;//Compiler
public static final int STATE_ROLE_HIERARCHY_ANALYZED = 10;//Lifting
public static final int STATE_ROLE_INIT_METHODS = 11;//RoleInitializationMethod
public static final int STATE_ROLE_FEATURES_COPIED = 12;//Copy inheritance
public static final int STATE_FULL_LIFTING = 13;//Lifting
public static final int STATE_FAULT_IN_TYPES = 14;//Scope
public static final int STATE_METHODS_CREATED = 15;//RoleTypeBinding, CopyInheritance, CalloutImplementor
public static final int STATE_TYPES_ADJUSTED = 16;//RoleTypeBinding, CopyInheritance
public static final int STATE_STATEMENTS_TRANSFORMED = 17;//TransformStatementsVisitor
public static final int STATE_CALLINS_TRANSFORMED = 18;//CallinImplementor[Dyn]
public static final int STATE_LATE_ATTRIBUTES_EVALUATED= 19; // ModelElement, TypeModel
public static final int STATE_METHODS_VERIFIED = 20;//Scope
public static final int STATE_RESOLVED = 21;//AST
public static final int STATE_LATE_ELEMENTS_COPIED = 22;//CopyInheritance
public static final int STATE_CODE_ANALYZED = 23;//AST
public static final int STATE_BYTE_CODE_PREPARED = 24;//Dependencies
public static final int STATE_BYTE_CODE_GENERATED = 25;//AST
/**
* Note, that this state does not trigger intermediate steps, in fact never use it
* with ensureState() but directly invoke Dependencies.cleanup!
*/
public static final int STATE_FINAL = 25;
@SuppressWarnings("nls")
public static final String[] STATE_NAMES =
{
"none",
"role files linked",
"roles split",
"bindings built",
"bindings: hierarchy built",
"bindings: imports built",
"bindings: hierarchy connected",
"bindings: fields and methods [completed]",
"roles linked",
"method bodies parsed",
"role initialization method",
"role features copied",
"role hierarchy analyzed",
"full lifting",
"fault in types",
"methods created",
"types adjusted",
"statements transformed",
"callins transformed",
"late attributes evaluated",
"methods verified",
"resolved",
"late elements copied",
"code analyzed",
"byte code prepared",
"byte code generated",
"translation completed"
};
}