{"@context":"https://w3id.org/codemeta/3.0","@type":"SoftwareSourceCode","identifier":"pkg:hackage/sv","name":"sv","description":"\n\nsv (separated values) is a library for parsing, decoding, encoding, and\nprinting CSV and similar formats (such as PSV, TSV, and many more).\n\nsv uses an Applicative combinator style for decoding and encoding, rather\nthan a type class based approach. This means we can have multiple decoders\nfor the same type, multiple combinators of the same type, and we never have\nto worry about orphan instances. These decoders can be stitched together from\nprovided primitives and combinators, or you can build one from a parser\nfrom your favourite parser combinator library.\n\nFor parsing, sv uses hw-dsv, a high performance streaming CSV parser based on rank-select data structures.\nsv works with UTF-8, and should work with CP-1252 as well. It does not work\nwith UTF-16 or UTF-32.\n\nsv returns values for all errors that occur - not just the first. Errors have\nmore structure than just a string, indicating what went wrong.\n\nsv tries not to be opinionated about how your data should look. We intend for\nthe user to have a great degree of freedom to build the right decoder for\ntheir dataset.\n\nParts of sv are intended to be imported as follows:\n\nExamples:\n\nDecoding a real CSV: Species.lhs\n\nDecoding by column name: Columnar.hs\n\nEncoding data to a CSV: Encoding.hs\n\nEncoding data to a CSV with a header: EncodingWithHeader.hs\n\nHandling NULL and Unknown occuring in a column of numbers: Numbers.hs\n\nDealing with non-rectangular data: Ragged.hs\n\nIntegrating with an existing attoparsec parser to read date stamps: TableTennis.hs\n\nTo get the best performance, the hw-dsv parser and its dependencies\nunderlying sv should be compiled with the flag +bmi2 to enable . These\nlibraries are:  bits-extra, hw-rankselect, hw-rankselect-base, and\nhw-dsv. A simple way to set the flags for all of them when building with\ncabal is to include a cabal.project file in your project containing\nsomething like the following:\n\n[Index] [Quick Jump]\n\nPackage maintainers\n\nFor package maintainers and hackage trustees\n\nCandidates","version":"1.3.1","softwareVersion":"1.3.1","license":"https://spdx.org/licenses/BSD-3-Clause","codeRepository":"https://github.com/qfpl/sv","issueTracker":"https://github.com/qfpl/sv/issues","url":"https://github.com/qfpl/sv","keywords":["bsd3","csv","library","text","web","Propose Tags"],"programmingLanguage":{"@type":"ComputerLanguage","name":"Haskell"},"maintainer":[{"@type":"Person","name":"qfpl"},{"@type":"Person","name":"GeorgeWilson"}],"author":[{"@type":"Person","name":"qfpl"},{"@type":"Person","name":"GeorgeWilson"}],"copyrightHolder":[{"@type":"Person","name":"qfpl"},{"@type":"Person","name":"GeorgeWilson"}],"dateCreated":"2018-03-06","dateModified":"2019-04-02","datePublished":"2019-04-02","copyrightYear":2018,"downloadUrl":"https://hackage.haskell.org/package/sv-1.3.1/sv-1.3.1.tar.gz","applicationCategory":"hackage","runtimePlatform":"hackage","developmentStatus":"active","sameAs":["https://hackage.haskell.org/package/sv"],"https://www.w3.org/ns/activitystreams#likes":78,"https://forgefed.org/ns#forks":11}