summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/translation/TranslationDirection.java
blob: 2ecb30be903e42d8a25953bc0792ce9e410ae070 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*******************************************************************************
 * Copyright (c) 2015 Jeff Martin.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Lesser General Public
 * License v3.0 which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/lgpl.html
 * <p>
 * Contributors:
 * Jeff Martin - initial API and implementation
 ******************************************************************************/

package cuchaz.enigma.translation;

public enum TranslationDirection {

	DEOBFUSCATING {
		@Override
		public <T> T choose(T deobfChoice, T obfChoice) {
			if (deobfChoice == null) {
				return obfChoice;
			}
			return deobfChoice;
		}
	},
	OBFUSCATING {
		@Override
		public <T> T choose(T deobfChoice, T obfChoice) {
			if (obfChoice == null) {
				return deobfChoice;
			}
			return obfChoice;
		}
	};

	public abstract <T> T choose(T deobfChoice, T obfChoice);
}