# Class: com.pnfsoftware.jeb.core.units.code.android.JvmMethodSig

Representation of JVM internal method signature. Example: `Lcom/abc/Foo;->bar(ILjava/lang/String;)V`

## Constructor: JvmMethodSig
- parameter: `csig`, type: `java.lang.String`
- parameter: `mname`, type: `java.lang.String`
- parameter: `rettype`, type: `java.lang.String`
- parameter: `partypes`, type: `java.lang.String[]`

Description: Create a JVM method signature.
parameter: csig: declaring class signature
parameter: mname: method name
parameter: rettype: return type signature
parameter: partypes: parameter type signatures

## Constructor: JvmMethodSig
- parameter: `csig`, type: `java.lang.String`
- parameter: `mname`, type: `java.lang.String`
- parameter: `rettype`, type: `java.lang.String`
- parameter: `partypes`, type: `java.util.Collection<java.lang.String>`

Description: Create a JVM method signature.
parameter: csig: declaring class signature
parameter: mname: method name
parameter: rettype: return type signature
parameter: partypes: parameter type signatures

## Field: csig
Type: `java.lang.String`
Description: Declaring class signature.

## Field: mname
Type: `java.lang.String`
Description: Method name.

## Field: partypes
Type: `java.util.List<java.lang.String>`
Description: Parameter type signatures.

## Field: rettype
Type: `java.lang.String`
Description: Return type signature.

## Method: generate
- return type: `java.lang.String`

Description: Generate the JVM internal method signature.
return: the generated signature

## Method: getMethodName
- return type: `java.lang.String`

Description: Get the method name.
return: the method name

## Method: getParameterTypes
- return type: `java.util.List<java.lang.String>`

Description: Get the parameter type signatures.
return: the parameter type signatures

## Method: getReturnType
- return type: `java.lang.String`

Description: Get the return type signature.
return: the return type signature

## Method: getType
- return type: `java.lang.String`

Description: Get the declaring class signature.
return: the declaring class signature

## Static Method: nameAndParams
- parameter: `msig`, type: `java.lang.String`
- return type: `java.lang.String`

Description: Parse a jvvm method name and return the name\+params string, eg `bar(I[J[[Ljava/lang/String;)` for msig= `Lcom/abc/Foo;->bar(I[J[[Ljava/lang/String;)V`
parameter: msig: a binary method signature
return: null on error

## Static Method: parse
- parameter: `msig`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.android.JvmMethodSig`

Description: Explode the internal signature \(full\) of a method. This method throws on error.
parameter: msig: a binary method signature, eg            `Lcom/abc/Foo;->bar(I[J[[Ljava/lang/String;)V`
return: parsed object; throws on error

## Static Method: parseSafe
- parameter: `msig`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.android.JvmMethodSig`

Description: Explode the internal signature \(full\) of a method. This method does not throw on error.
parameter: msig: a binary method signature, eg            `Lcom/abc/Foo;->bar(I[J[[Ljava/lang/String;)V`
return: null on error

