citeproc-hs-0.3.3: A Citation Style Language implementation in Haskell

Portability | unportable
Stability | unstable
Maintainer | Andrea Rossato <andrea.rossato@unitn.it>

Text.CSL.Eval.Names

Description

The CSL implementation

Synopsis

- evalNames :: Bool -> [String] -> [Name] -> String -> State EvalState [Output]
- formatNames :: Bool -> Delimiter -> String -> String -> [Agent] -> Name -> State EvalState [Output]
- isEtAl :: Bool -> [Option] -> String -> [Agent] -> (Bool, Int)
- isPlural :: Plural -> Int -> Bool
- formatName :: EvalMode -> Bool -> Form -> Formatting -> [Option] -> [NamePart] -> Agent -> [Output]
- unwords' :: [String] -> String
- formatLabel :: Form -> Formatting -> Bool -> String -> State EvalState [Output]
- (<+>) :: String -> String -> String

# Documentation

evalNames :: Bool -> [String] -> [Name] -> String -> State EvalState [Output]

formatNames :: Bool -> Delimiter -> String -> String -> [Agent] -> Name -> State EvalState [Output]

The `Bool` is `True` when formatting a name with a final et-al. The first `String` represents the position and the second the role (e.i. editor, translator, etc.).

isEtAl :: Bool -> [Option] -> String -> [Agent] -> (Bool, Int)

The first `Bool` is `True` if we are evaluating the bibliography. The `String` is the cite position. The function also returns the number of contributors to be displayed.

isPlural :: Plural -> Int -> Bool

formatName :: EvalMode -> Bool -> Form -> Formatting -> [Option] -> [NamePart] -> Agent -> [Output]

Generate the `Agent`s names applying et-al options, with all possible permutations to disambiguate colliding citations. The `Bool` indicate whether we are formatting the first name or not.

unwords' :: [String] -> String

formatLabel :: Form -> Formatting -> Bool -> String -> State EvalState [Output]

(<+>) :: String -> String -> String