Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse JDT
Release 3.5

org.eclipse.jdt.core
Class BindingKey


java.lang.Object
  extended by 
org.eclipse.jdt.core.BindingKey

public final class BindingKey
extends Object

Utility class to decode or create a binding key.

This class is not intended to be subclassed by clients.

Since:
3.1
See Also:
IBinding.getKey()

Constructor Summary
BindingKey ( String key)
          Creates a new binding key.
 
Method Summary
static  String createArrayTypeBindingKey ( String typeKey, int arrayDimension)
          Creates a new array type binding key from the given type binding key and the given array dimension.
static  String createParameterizedTypeBindingKey ( String genericTypeKey, String[] argumentTypeKeys)
          Creates a new parameterized type binding key from the given generic type binding key and the given argument type binding keys.
static  String createTypeBindingKey ( String typeName)
          Creates a new type binding key from the given type name.
static  String createTypeVariableBindingKey ( String typeVariableName, String declaringKey)
          Creates a new type variable binding key from the given type variable name and the given declaring key.
static  String createWilcardTypeBindingKey ( String typeKey, char kind)
          Deprecated. This method is missing crucial information necessary for proper wildcard binding key creation.
static  String createWildcardTypeBindingKey ( String genericTypeKey, char boundKind, String boundTypeKey, int rank)
          Creates a new wildcard type binding key from the given generic type binding key, the given wildcard kind (one of Signature.C_STAR, Signature.C_SUPER, or Signature.C_EXTENDS the given bound type binding key and the given rank.
  String[] getThrownExceptions ()
          Returns the thrown exception signatures of the element represented by this binding key.
  String[] getTypeArguments ()
          Returns the type argument signatures of the element represented by this binding key.
 boolean isParameterizedMethod ()
          Returns whether this binding key represents a parameterized method, or if its declaring method is a parameterized method.
 boolean isParameterizedType ()
          Returns whether this binding key represents a parameterized type, or if its declaring type is a parameterized type.
 boolean isRawType ()
          Returns whether this binding key represents a raw type.
  String toSignature ()
          Transforms this binding key into a resolved signature.
  String toString ()
           
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BindingKey

public BindingKey(
String key)
Creates a new binding key.

Parameters:
key - the key to decode
Method Detail

createArrayTypeBindingKey

public static 
String createArrayTypeBindingKey(
String typeKey,
                                               int arrayDimension)
Creates a new array type binding key from the given type binding key and the given array dimension.

For example:

 
 createArrayTypeBindingKey("Ljava/lang/Object;", 1) -> "[Ljava/lang/Object;"
 createArrayTypeBindingKey("I", 2) -> "[[I"
 
 

Parameters:
typeKey - the binding key of the given type
arrayDimension - the given array dimension
Returns:
a new array type binding key

createParameterizedTypeBindingKey

public static 
String createParameterizedTypeBindingKey(
String genericTypeKey,
                                                       
String[] argumentTypeKeys)
Creates a new parameterized type binding key from the given generic type binding key and the given argument type binding keys. If the argument type keys array is empty, then a raw type binding key is created.

For example:

 
 createParameterizedTypeBindingKey(
     "Ljava/util/Map<TK;TV;>;",
     new String[] {"Ljava/lang/String;", "Ljava/lang/Object;"}) ->
       "Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;"
 createParameterizedTypeBindingKey(
     "Ljava/util/List<TE;>;", new String[] {}) ->
       "Ljava/util/List<>;"
 
 

Parameters:
genericTypeKey - the binding key of the generic type
argumentTypeKeys - the possibly empty list of binding keys of argument types
Returns:
a new parameterized type binding key

createTypeBindingKey

public static 
String createTypeBindingKey(
String typeName)
Creates a new type binding key from the given type name. The type name must be either a fully qualified name, an array type name or a primitive type name. If the type name is fully qualified, then it is expected to be dot-based. Note that inner types, generic types and parameterized types are not supported.

For example:

 
 createTypeBindingKey("int") -> "I"
 createTypeBindingKey("java.lang.String") -> "Ljava/lang/String;"
 createTypeBindingKey("boolean[]") -> "[Z"
 
 

Parameters:
typeName - the possibly qualified type name
Returns:
a new type binding key

createTypeVariableBindingKey

public static 
String createTypeVariableBindingKey(
String typeVariableName,
                                                  
String declaringKey)
Creates a new type variable binding key from the given type variable name and the given declaring key. The declaring key can either be a type binding key or a method binding key.

For example:

 
 createTypeVariableBindingKey("T", "Ljava/util/List<TE;>;") ->
   "Ljava/util/List<TE;>;:TT;"
 createTypeVariableBindingKey("SomeTypeVariable", "Lp/X;.foo()V") ->
   "Lp/X;.foo()V:TSomeTypeVariable;"
 
 

Parameters:
typeVariableName - the name of the given type variable
declaringKey - the binding key of the type or method the type variable belongs to
Returns:
a new type variable binding key

createWilcardTypeBindingKey

public static 
String createWilcardTypeBindingKey(
String typeKey,
                                                 char kind)
Deprecated. This method is missing crucial information necessary for proper wildcard binding key creation.

Creates a new wildcard type binding key from the given type binding key and the given wildcard kind (one of Signature.C_STAR, Signature.C_SUPER, or Signature.C_EXTENDS. If the wildcard is Signature.C_STAR, the given type binding key is ignored.

For example:

 
 createWilcardTypeBindingKey(null, Signature.C_STAR) -> "*"
 createWilcardTypeBindingKey("Ljava/util/List<TE;>;",
    Signature.C_SUPER) -> "-Ljava/util/List<TE;>;"
 createWilcardTypeBindingKey("Ljava/util/ArrayList;", Signature.C_EXTENDS) ->
    "+Ljava/util/ArrayList;"
 
 

Parameters:
typeKey - the binding key of the given type
kind - one of Signature.C_STAR, Signature.C_SUPER, or Signature.C_EXTENDS
Returns:
a new wildcard type binding key
See Also:
createWildcardTypeBindingKey(String, char, String, int)

createWildcardTypeBindingKey

public static 
String createWildcardTypeBindingKey(
String genericTypeKey,
                                                  char boundKind,
                                                  
String boundTypeKey,
                                                  int rank)
Creates a new wildcard type binding key from the given generic type binding key, the given wildcard kind (one of Signature.C_STAR, Signature.C_SUPER, or Signature.C_EXTENDS the given bound type binding key and the given rank. If the wildcard kind is Signature.C_STAR, the given bound type binding key is ignored.

For example:

 
 createWildcardTypeBindingKey("Ljava/util/ArrayList;", Signature.C_STAR, null, 0) -> "Ljava/util/ArrayList;{0}*"
 createWildcardTypeBindingKey("Ljava/util/ArrayList;", Signature.C_SUPER, "Ljava/lang/String;", 0) -> "Ljava/util/ArrayList;{0}-Ljava/lang/String;"
 createWildcardTypeBindingKey("Ljava/util/HashMap;", Signature.C_EXTENDS, "Ljava/lang/String;", 1) ->
    "Ljava/util/HashMap;{1}+Ljava/lang/String;"
 
 

Parameters:
genericTypeKey - the binding key of the generic type
boundKind - one of Signature.C_STAR, Signature.C_SUPER, or Signature.C_EXTENDS
boundTypeKey - the binding key of the bounding type.
rank - the relative position of this wild card type in the parameterization of the generic type.
Returns:
a new wildcard type binding key
Since:
3.5

getThrownExceptions

public 
String[] getThrownExceptions()
Returns the thrown exception signatures of the element represented by this binding key. If this binding key does not represent a method or does not throw any exception, returns an empty array.

Returns:
the thrown exceptions signatures
Since:
3.3

getTypeArguments

public 
String[] getTypeArguments()
Returns the type argument signatures of the element represented by this binding key. If this binding key doesn't represent a parameterized type or a parameterized method, returns an empty array.

Returns:
the type argument signatures

isRawType

public boolean isRawType()
Returns whether this binding key represents a raw type.

Returns:
whether this binding key represents a raw type

isParameterizedType

public boolean isParameterizedType()
Returns whether this binding key represents a parameterized type, or if its declaring type is a parameterized type.

Returns:
whether this binding key represents a parameterized type

isParameterizedMethod

public boolean isParameterizedMethod()
Returns whether this binding key represents a parameterized method, or if its declaring method is a parameterized method.

Returns:
whether this binding key represents a parameterized method

toSignature

public 
String toSignature()
Transforms this binding key into a resolved signature. If this binding key represents a field, the returned signature is the field type's signature.

Returns:
the resolved signature for this binding key
Since:
3.2
See Also:
Signature

toString

public 
String toString()
Overrides:
toString in class Object

Eclipse JDT
Release 3.5

Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire