]> git.uio.no Git - ifi-stolz-refaktor.git/blame - case-study/jdt-before/core refactoring/org/eclipse/jdt/internal/corext/refactoring/code/flow/ConditionalFlowInfo.java
Case Study: adding data and statistics
[ifi-stolz-refaktor.git] / case-study / jdt-before / core refactoring / org / eclipse / jdt / internal / corext / refactoring / code / flow / ConditionalFlowInfo.java
CommitLineData
1b2798f6
EK
1/*******************************************************************************
2 * Copyright (c) 2000, 2008 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * IBM Corporation - initial API and implementation
10 *******************************************************************************/
11package org.eclipse.jdt.internal.corext.refactoring.code.flow;
12
13
14
15class ConditionalFlowInfo extends FlowInfo {
16
17 public ConditionalFlowInfo() {
18 super(NO_RETURN);
19 }
20
21 public void mergeCondition(FlowInfo info, FlowContext context) {
22 if (info == null)
23 return;
24 mergeAccessModeSequential(info, context);
25 }
26
27 public void merge(FlowInfo truePart, FlowInfo falsePart, FlowContext context) {
28 if (truePart == null && falsePart == null)
29 return;
30
31 GenericConditionalFlowInfo cond= new GenericConditionalFlowInfo();
32 if (truePart != null)
33 cond.mergeAccessMode(truePart, context);
34
35 if (falsePart != null)
36 cond.mergeAccessMode(falsePart, context);
37
38 if (truePart == null || falsePart == null)
39 cond.mergeEmptyCondition(context);
40
41 mergeAccessModeSequential(cond, context);
42 }
43}
44
45