]> source.dussan.org Git - aspectj.git/commitdiff
New type so we can distinguish this special kind of PrivilegedAccessMunger
authoraclement <aclement>
Wed, 7 Feb 2007 13:49:36 +0000 (13:49 +0000)
committeraclement <aclement>
Wed, 7 Feb 2007 13:49:36 +0000 (13:49 +0000)
weaver/src/org/aspectj/weaver/ExposeTypeMunger.java [new file with mode: 0644]

diff --git a/weaver/src/org/aspectj/weaver/ExposeTypeMunger.java b/weaver/src/org/aspectj/weaver/ExposeTypeMunger.java
new file mode 100644 (file)
index 0000000..486ddbe
--- /dev/null
@@ -0,0 +1,30 @@
+/* *******************************************************************
+ * Copyright (c) 2007 Contributors
+ * All rights reserved. 
+ * This program and the accompanying materials are made available 
+ * under the terms of the Eclipse Public License v1.0 
+ * which accompanies this distribution and is available at 
+ * http://www.eclipse.org/legal/epl-v10.html 
+ *  
+ * Contributors: 
+ *     Andy Clement, IBM       initial implementation
+ * ******************************************************************/
+package org.aspectj.weaver;
+
+/**
+ * Special kind of privileged access munger which exposes a type to be public.
+ */
+public class ExposeTypeMunger extends PrivilegedAccessMunger {
+
+       public ExposeTypeMunger(UnresolvedType typeToExpose) {
+               super(new ResolvedMemberImpl(Member.STATIC_INITIALIZATION, typeToExpose, 0, ResolvedType.VOID, "<clinit>", UnresolvedType.NONE));
+       }
+
+       public String toString() {
+               return "ExposeTypeMunger("+getSignature().getDeclaringType().getName()+")";
+       }
+
+       public String getExposedTypeSignature() {
+               return getSignature().getDeclaringType().getSignature();
+       }
+}