# Class: com.pnfsoftware.jeb.core.units.code.asm.analyzer.MemoryRanges

A collection of byte\-addressable memory ranges. The final addressable byte \(e.g., @ 0xFFFFFFFF in a 32\-bit address space\) cannot be part of any range. 

 This class is not thread\-safe.

## Constructor: MemoryRanges
- parameter: `spaceBits`, type: `int`


## Constructor: MemoryRanges


## Constructor: MemoryRanges
- parameter: `mem`, type: `com.pnfsoftware.jeb.core.units.code.asm.memory.IVirtualMemory`


## Method: add
- parameter: `begin0`, type: `long`
- parameter: `end0`, type: `long`


## Method: aggregatedRangesSize
- return type: `long`


## Method: asList
- return type: `java.util.List<com.pnfsoftware.jeb.util.base.Couple<java.lang.Long,java.lang.Long>>`

Description: Convert the [MemoryRanges](MemoryRanges) to a [List](List) of ranges \(stored as [Couple](Couple).
return: the list of [MemoryRanges](MemoryRanges)

## Method: clear


## Method: contains
- parameter: `address`, type: `long`
- return type: `boolean`

Description: Indicate if an address is defined in this [MemoryRanges](MemoryRanges)
parameter: address: address to test
return: true if [MemoryRanges](MemoryRanges) contains this address

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


## Method: getLocalBegin
- parameter: `address0`, type: `long`
- return type: `java.lang.Long`


## Method: getLocalEnd
- parameter: `address0`, type: `long`
- return type: `java.lang.Long`


## Method: getLocalRange
- parameter: `address0`, type: `long`
- return type: `com.pnfsoftware.jeb.util.base.Couple<java.lang.Long,java.lang.Long>`


## Method: getNextRange
- parameter: `address0`, type: `long`
- return type: `com.pnfsoftware.jeb.util.base.Couple<java.lang.Long,java.lang.Long>`


## Method: getPreviousRange
- parameter: `address0`, type: `long`
- return type: `com.pnfsoftware.jeb.util.base.Couple<java.lang.Long,java.lang.Long>`


## Method: intersects
- parameter: `addressStart`, type: `long`
- parameter: `addressEnd`, type: `long`
- return type: `boolean`

Description: Indicate if an element from range \[addressStart:addressEnd\[ is defined in this [MemoryRanges](MemoryRanges).
parameter: addressStart: start address \(inclusive\)
parameter: addressEnd: end address \(exclusive\)
return: true if [MemoryRanges](MemoryRanges) contains at least one address from the given range

## Method: max
- return type: `java.lang.Long`


## Method: min
- return type: `java.lang.Long`


## Method: remove
- parameter: `begin0`, type: `long`
- parameter: `end0`, type: `long`


## Method: spanSize
- return type: `long`


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


