# Class: com.pnfsoftware.jeb.core.units.code.asm.type.PrettyTypeFormatter

C\-like formatting an [INativeType](INativeType) to a string. Allows formatting of nested structures. 

 Note that array formatting does not respect C type notation: \[dimension\] is not after the identifier name, but instead, after the type name. The dimensions are reversed. Example: 

```

 C variable:
   int a[6][4];    // an two-dimensional array of integers, first dim: 6, second dim: 4
 would have its type rendered as:
   int[4][6]       // note the dimension ordering
 
```

## Constructor: PrettyTypeFormatter

Description: Create a formatter with default options.

## Constructor: PrettyTypeFormatter
- parameter: `levelStructDepth`, type: `int`
- parameter: `fullDisplay`, type: `boolean`

Description: Create a formatter.
parameter: levelStructDepth: maximum structure nesting depth to expand
parameter: fullDisplay: true to display offsets, padding information, and aliased types

## Method: format
- parameter: `t`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.INativeType`
- return type: `java.lang.String`

Description: Format a native type.
parameter: t: native type to format
return: formatted type string

## Method: getLevelStructDepth
- return type: `int`

Description: Get the maximum structure nesting depth to expand.
return: maximum structure nesting depth

## Method: isDisplayAliasedType
- return type: `boolean`

Description: Determine whether aliased types are expanded.
return: true if aliased types are expanded

## Method: isDisplayOffsets
- return type: `boolean`

Description: Determine whether field and type offsets are displayed.
return: true if offsets are displayed

## Method: isDisplayPaddingInfo
- return type: `boolean`

Description: Determine whether padding and alignment information is displayed.
return: true if padding and alignment information is displayed

## Method: isDisplayTrailingSemicolon
- return type: `boolean`

Description: Determine whether a trailing semicolon is appended.
return: true if a trailing semicolon is appended

## Method: setDisplayAliasedType
- parameter: `displayAliasedType`, type: `boolean`

Description: Set whether aliased types should be expanded.
parameter: displayAliasedType: true to expand aliased types

## Method: setDisplayOffsets
- parameter: `displayOffsets`, type: `boolean`

Description: Set whether field and type offsets should be displayed.
parameter: displayOffsets: true to display offsets

## Method: setDisplayPaddingInfo
- parameter: `displayPaddingInfo`, type: `boolean`

Description: Set whether padding and alignment information should be displayed.
parameter: displayPaddingInfo: true to display padding and alignment information

## Method: setDisplayTrailingSemicolon
- parameter: `displayTrailingSemicolon`, type: `boolean`

Description: Set whether a trailing semicolon should be appended.
parameter: displayTrailingSemicolon: true to append a trailing semicolon

## Method: setLevelStructDepth
- parameter: `levelStructDepth`, type: `int`

Description: Set the maximum structure nesting depth to expand.
parameter: levelStructDepth: maximum structure nesting depth

