clash-lib-1.8.4: Clash: a functional hardware description language - As a library

Safe Haskell | None
Language | Haskell2010

Clash.Netlist.Id.Internal

Contents

- Orphan instances

Synopsis

- lookupFreshCache# :: FreshCache -> Identifier -> Maybe Word
- updateFreshCache# :: HasCallStack => FreshCache -> Identifier -> FreshCache
- mkUnique# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier)
- add# :: HasCallStack => IdentifierSet -> Identifier -> IdentifierSet
- addMultiple# :: (HasCallStack, Foldable t) => IdentifierSet -> t Identifier -> IdentifierSet
- addRaw# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier)
- make# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier)
- makeBasic# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier)
- makeBasicOr# :: HasCallStack => IdentifierSet -> Text -> Text -> (IdentifierSet, Identifier)
- next# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier)
- nextN# :: HasCallStack => Int -> IdentifierSet -> Identifier -> (IdentifierSet, [Identifier])
- deepenN# :: HasCallStack => Int -> IdentifierSet -> Identifier -> (IdentifierSet, [Identifier])
- deepen# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier)
- suffix# :: HasCallStack => IdentifierSet -> Identifier -> Text -> (IdentifierSet, Identifier)
- prefix# :: HasCallStack => IdentifierSet -> Identifier -> Text -> (IdentifierSet, Identifier)
- toText# :: Identifier -> Text
- isBasic# :: HDL -> Text -> Bool
- isExtended# :: HDL -> Text -> Bool
- toPrintableAscii# :: Text -> Text
- parseIdentifier# :: Text -> (Text, [Word])
- make## :: HasCallStack => HDL -> Text -> Identifier
- toBasicId# :: HDL -> PreserveCase -> Text -> Text
- fromCoreId# :: IdentifierSet -> Id -> (IdentifierSet, Identifier)

# Documentation

lookupFreshCache# :: FreshCache -> Identifier -> Maybe Word Source #

Return identifier with highest extension for given identifier. See `is_freshCache` for more information.

For example, if the FreshCache contains "foo_12_25" and the given identifier is "foo_12_13" this function would return "Just 25". In this case, "foo_12_26" is guaranteed to be a fresh identifier.

updateFreshCache# :: HasCallStack => FreshCache -> Identifier -> FreshCache Source #

Add new identifier to FreshCache, see `is_freshCache` for more information.

mkUnique# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier) Source #

Adds identifier at verbatim if its basename hasn't been used before. Otherwise it will return the first free identifier.

add# :: HasCallStack => IdentifierSet -> Identifier -> IdentifierSet Source #

Non-monadic, internal version of `add`

addMultiple# :: (HasCallStack, Foldable t) => IdentifierSet -> t Identifier -> IdentifierSet Source #

Non-monadic, internal version of `addMultiple`

addRaw# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `addRaw`

make# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `make`

makeBasic# :: HasCallStack => IdentifierSet -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `makeBasic`

makeBasicOr# :: HasCallStack => IdentifierSet -> Text -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `makeBasicOr`

next# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `next`

nextN# :: HasCallStack => Int -> IdentifierSet -> Identifier -> (IdentifierSet, [Identifier]) Source #

Non-monadic, internal version of `nextN`

deepenN# :: HasCallStack => Int -> IdentifierSet -> Identifier -> (IdentifierSet, [Identifier]) Source #

Non-monadic, internal version of `deepenN`

deepen# :: HasCallStack => IdentifierSet -> Identifier -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `deepen`

suffix# :: HasCallStack => IdentifierSet -> Identifier -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `suffix`

prefix# :: HasCallStack => IdentifierSet -> Identifier -> Text -> (IdentifierSet, Identifier) Source #

Non-monadic, internal version of `prefix`

toText# :: Identifier -> Text Source #

isBasic# :: HDL -> Text -> Bool Source #

Is given string a valid basic identifier in given HDL?

isExtended# :: HDL -> Text -> Bool Source #

Is given string a valid extended identifier in given HDL?

toPrintableAscii# :: Text -> Text Source #

Convert given string to ASCII. Retains all printable ASCII. All other characters are thrown out.

parseIdentifier# :: Text -> (Text, [Word]) Source #

Split identifiers such as "foo_1_2" into ("foo", [2, 1]).

make## :: HasCallStack => HDL -> Text -> Identifier Source #

toBasicId# :: HDL -> PreserveCase -> Text -> Text Source #

fromCoreId# :: IdentifierSet -> Id -> (IdentifierSet, Identifier) Source #

Convert a Clash Core Id to an identifier. Makes sure returned identifier is unique.

# Orphan instances

Pretty Identifier Source # |
Instance details Methods pretty :: Identifier -> Doc ann Source # prettyList :: [Identifier] -> Doc ann Source #