From 029f65d110279288f4cad7fb7cfaa33efd0f207d Mon Sep 17 00:00:00 2001 From: jeff Date: Thu, 28 Aug 2014 19:34:17 -0400 Subject: Show public/protected/private access on field/method/constructor references --- src/cuchaz/enigma/analysis/Access.java | 51 ++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/cuchaz/enigma/analysis/Access.java (limited to 'src/cuchaz/enigma/analysis/Access.java') diff --git a/src/cuchaz/enigma/analysis/Access.java b/src/cuchaz/enigma/analysis/Access.java new file mode 100644 index 0000000..e35bb21 --- /dev/null +++ b/src/cuchaz/enigma/analysis/Access.java @@ -0,0 +1,51 @@ +/******************************************************************************* + * Copyright (c) 2014 Jeff Martin. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the GNU Public License v3.0 + * which accompanies this distribution, and is available at + * http://www.gnu.org/licenses/gpl.html + * + * Contributors: + * Jeff Martin - initial API and implementation + ******************************************************************************/ +package cuchaz.enigma.analysis; + +import java.lang.reflect.Modifier; + +import javassist.CtBehavior; +import javassist.CtField; + +public enum Access +{ + Public, + Protected, + Private; + + public static Access get( CtBehavior behavior ) + { + return get( behavior.getModifiers() ); + } + + public static Access get( CtField field ) + { + return get( field.getModifiers() ); + } + + public static Access get( int modifiers ) + { + if( Modifier.isPublic( modifiers ) ) + { + return Public; + } + else if( Modifier.isProtected( modifiers ) ) + { + return Protected; + } + else if( Modifier.isPrivate( modifiers ) ) + { + return Private; + } + // assume public by default + return Public; + } +} \ No newline at end of file -- cgit v1.2.3