Source

text / Data / Text / Lazy / Builder.hs

Author Commit Message Labels Comments Date
Bryan O'Sullivan
Expose Builder.fromString.
Tags
0.11.0.8
Johan Tibell
Improved documentation for builders
Bryan O'Sullivan
Rename unsafeNew to new
Antoine Latter
Odd tweak to build with GHC 6.13
Bryan O'Sullivan
Tidy up some assert-related silliness
Bryan O'Sullivan
Rename partialCopy to copy
Bryan O'Sullivan
Inline withSize
Bryan O'Sullivan
Remove more duplicated Builder code This time, I also changed the return value from UnsafeChar.unsafeWrite to return the number of Word16 values written, instead of the next offset in the array to use.
Bryan O'Sullivan
Fix off-by-one error
Bryan O'Sullivan
Remove duplicated code
Bryan O'Sullivan
Update copyrights
Bryan O'Sullivan
Make use of assert conditional This turns out to make about a 10% difference to performance, even though the GHC docs claim it shouldn't :-(
Bryan O'Sullivan
Simplify the internal array code There was no value (but also no performance penalty) to it being based around a typeclass, so I ripped that out, along with Hugs support that I'd never really compile-tested.
Bryan O'Sullivan
Simplify a definition
Bryan O'Sullivan
Add Show and IsString instances for Builder convenience.
Bryan O'Sullivan
Default to small chunk size for Builder.
tibbe
More unboxing in fromString
tibbe
Move rewrite rules to a different phase
tibbe
Added rewrite rule for fromText This rule avoids the creation of an intermediate 'Text' value in fromText (fromString "str"))
tibbe
Tweaklet
tibbe
New rewrite rule for right-associative uses of append Merges bounds check when append is used in a right-associative fashion: w1 `append` (w2 `append` ...)
tibbe
Fixed bounds check bug
tibbe
Workaround for inliner problem The rewrite rules makes GHC think writeN (and ensureFree) are recursive so no unfolding would be generated for them.
tibbe
Added RULES to merge adjacent bounds checks. This speeds up the "builder/mappend 8 char" benchmark by 39%. The number of merged bounds checks is currently limited to -fmax-simplifier-iterations. Replacing 'append' (and perhaps 'writeN') with some other combinator might fix that problem.
Bryan O'Sullivan
Small tweaklets.
Bryan O'Sullivan
Minor tweaks.
Bryan O'Sullivan
Define and export toLazyTextWith.
Bryan O'Sullivan
Remove unneeded LANGUAGE pragma.
tibbe
Remove unnecessary laziness from builder. Decreased run-time on the "builder/mappend char" benchmark with 26% and the "builder/mappend text" benchmark with 3%.
Bryan O'Sullivan
Move inlineInterleaveST and document it.
  1. Prev
  2. 1
  3. 2
  4. Next