X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Feclipse%2Fjdt%2Finternal%2Fcompiler%2Fflow%2FInitializationFlowContext.java;fp=src%2Forg%2Feclipse%2Fjdt%2Finternal%2Fcompiler%2Fflow%2FInitializationFlowContext.java;h=0000000000000000000000000000000000000000;hb=6f0cd02d46e011bd5599e1b7fefc6159cb811135;hp=e609ae17ec30a2d7fcef48d05df78a2c362ed23e;hpb=622d0e5a4b1b35b6918a516a79a0cc22272a919e;p=org.ibex.tool.git diff --git a/src/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java b/src/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java deleted file mode 100644 index e609ae1..0000000 --- a/src/org/eclipse/jdt/internal/compiler/flow/InitializationFlowContext.java +++ /dev/null @@ -1,97 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2004 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.jdt.internal.compiler.flow; - -import org.eclipse.jdt.internal.compiler.ast.ASTNode; -import org.eclipse.jdt.internal.compiler.lookup.BlockScope; -import org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding; -import org.eclipse.jdt.internal.compiler.lookup.TypeBinding; - -/** - * Reflects the context of code analysis, keeping track of enclosing - * try statements, exception handlers, etc... - */ -public class InitializationFlowContext extends ExceptionHandlingFlowContext { - - public int exceptionCount; - public TypeBinding[] thrownExceptions = new TypeBinding[5]; - public ASTNode[] exceptionThrowers = new ASTNode[5]; - public FlowInfo[] exceptionThrowerFlowInfos = new FlowInfo[5]; - - public InitializationFlowContext( - FlowContext parent, - ASTNode associatedNode, - BlockScope scope) { - super( - parent, - associatedNode, - NoExceptions, // no exception allowed by default - scope, - FlowInfo.DEAD_END); - } - - public void checkInitializerExceptions( - BlockScope currentScope, - FlowContext initializerContext, - FlowInfo flowInfo) { - for (int i = 0; i < exceptionCount; i++) { - initializerContext.checkExceptionHandlers( - thrownExceptions[i], - exceptionThrowers[i], - exceptionThrowerFlowInfos[i], - currentScope); - } - } - - public String individualToString() { - - StringBuffer buffer = new StringBuffer("Initialization flow context"); //$NON-NLS-1$ - for (int i = 0; i < exceptionCount; i++) { - buffer.append('[').append(thrownExceptions[i].readableName()); - buffer.append('-').append(exceptionThrowerFlowInfos[i].toString()).append(']'); - } - return buffer.toString(); - } - - public void recordHandlingException( - ReferenceBinding exceptionType, - UnconditionalFlowInfo flowInfo, - TypeBinding raisedException, - ASTNode invocationSite, - boolean wasMasked) { - - // even if unreachable code, need to perform unhandled exception diagnosis - int size = thrownExceptions.length; - if (exceptionCount == size) { - System.arraycopy( - thrownExceptions, - 0, - (thrownExceptions = new TypeBinding[size * 2]), - 0, - size); - System.arraycopy( - exceptionThrowers, - 0, - (exceptionThrowers = new ASTNode[size * 2]), - 0, - size); - System.arraycopy( - exceptionThrowerFlowInfos, - 0, - (exceptionThrowerFlowInfos = new FlowInfo[size * 2]), - 0, - size); - } - thrownExceptions[exceptionCount] = raisedException; - exceptionThrowers[exceptionCount] = invocationSite; - exceptionThrowerFlowInfos[exceptionCount++] = flowInfo.copy(); - } -}