lsm-tree-0.1.0.0: Log-structured merge-trees
Safe HaskellSafe-Inferred
LanguageGHC2021

Database.LSMTree.Internal.Page

Description

Utilities related to pages.

Synopsis

Documentation

newtype PageNo Source #

A 0-based number identifying a disk page.

Constructors

PageNo 

Fields

Instances

Instances details
Show PageNo Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

NFData PageNo Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

Methods

rnf :: PageNo -> () #

Eq PageNo Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

Methods

(==) :: PageNo -> PageNo -> Bool #

(/=) :: PageNo -> PageNo -> Bool #

Ord PageNo Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

nextPageNo :: PageNo -> PageNo Source #

Increment the page number.

Note: This does not ensure that the incremented page number exists within a given page span.

newtype NumPages Source #

The number of pages contained by an index or other paging data-structure.

Note: This is a 0-based number; take care to ensure arithmetic underflow does not occur during subtraction operations!

Constructors

NumPages Word 

Instances

Instances details
Show NumPages Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

NFData NumPages Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

Methods

rnf :: NumPages -> () #

Eq NumPages Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

Ord NumPages Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

getNumPages :: Integral i => NumPages -> i Source #

A type-safe "unwrapper" for NumPages. Use this accessor whenever you want to convert NumPages to a more versatile number type.

data PageSpan Source #

A span of pages, representing an inclusive interval of page numbers.

Typlically used to denote the contiguous page span for a database entry.

Constructors

PageSpan 

Instances

Instances details
Show PageSpan Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

NFData PageSpan Source # 
Instance details

Defined in Database.LSMTree.Internal.Page

Methods

rnf :: PageSpan -> () #

Eq PageSpan Source # 
Instance details

Defined in Database.LSMTree.Internal.Page