<commit_before>## Stout Developer Guide

Stout is a header-only C++ library. Simply add the `include` folder to your include path (i.e., `-I/path/to/stout/include`) during compilation (eventually we plan to support installation).

> NOTE: Depending on which headers you'd like to use, you may require the following third party libraries:
>
>  - Boost
>  - Google's glog (this dependency will be removed in the future)
>  - Google's protobuf (version 2.5.0 is required to run tests)
>  - Google's gmock/gtest

There are a handful of data structures provided within the library (including some collections), as well as some namespaced and miscellaneous utilities. Also included are abstractions for [command line flags](#flags).

Stout provides and heavily leverages some monadic structures including [Option](#option) and [Try](#try).

Note that the library is designed to completely avoid exceptions. See [exceptions](#exceptions) for further discussion.

* <a href="#option">Option, Some, and None</a>
* <a href="#try">Try, Result, and Error</a>
* <a href="#nothing">Nothing</a>
* <a href="#fs">fs::</a>
* <a href="#gzip">gzip::</a>
* <a href="#json">JSON::</a>
* <a href="#lambda">lambda::</a>
* <a href="#net">net::</a>
* <a href="#os">os::</a>
* <a href="#path">path::</a>
* <a href="#proc">proc::</a>
* <a href="#protobuf">protobuf::</a>
* <a href="#strings">strings::</a><commit_msg>add travis status in readme<commit_after>## Stout Developer Guide

[![Build Status](https://travis-ci.org/euskadi31/stout-cpp.svg)](https://travis-ci.org/euskadi31/stout-cpp)


Stout is a header-only C++ library. Simply add the `include` folder to your include path (i.e., `-I/path/to/stout/include`) during compilation (eventually we plan to support installation).

> NOTE: Depending on which headers you'd like to use, you may require the following third party libraries:
>
>  - Boost
>  - Google's glog (this dependency will be removed in the future)
>  - Google's protobuf (version 2.5.0 is required to run tests)
>  - Google's gmock/gtest
>  - Picojson (version 1.3.0)

There are a handful of data structures provided within the library (including some collections), as well as some namespaced and miscellaneous utilities. Also included are abstractions for [command line flags](#flags).

Stout provides and heavily leverages some monadic structures including [Option](#option) and [Try](#try).

Note that the library is designed to completely avoid exceptions. See [exceptions](#exceptions) for further discussion.

* <a href="#option">Option, Some, and None</a>
* <a href="#try">Try, Result, and Error</a>
* <a href="#nothing">Nothing</a>
* <a href="#fs">fs::</a>
* <a href="#gzip">gzip::</a>
* <a href="#json">JSON::</a>
* <a href="#lambda">lambda::</a>
* <a href="#net">net::</a>
* <a href="#os">os::</a>
* <a href="#path">path::</a>
* <a href="#proc">proc::</a>
* <a href="#protobuf">protobuf::</a>
* <a href="#strings">strings::</a>
{'fraction_non_alphanumeric': 0.16916780354706684, 'fraction_numerical': 0.004433833560709414, 'mean_word_length': 5.097713097713098, 'pattern_counts': {'":': 0, '<': 55, '<?xml version=': 0, '>': 68, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4343106', 'n_tokens_mistral': 945, 'n_tokens_neox': 907, 'n_words': 322}