<commit_before># C++ Style Guide for google-cloud-cpp

This project follows the [Google Style Guide][google-style-guide-link]
(hereafter GSG). In a few cases where the GSG gives latitude, we have made a
choice for consistency within this project. The following describes where we
differ from the GSG.

[google-style-guide-link]: https://google.github.io/styleguide/cppguide.html

## Reference Arguments

Function return values are preferred over argument out-params. However, when an
out-param is appropriate, prefer a non-const reference.
<commit_msg>doc: copy the `Include Guards` section from the -cpp repo (#217)<commit_after># C++ Style Guide for google-cloud-cpp

This project follows the [Google Style Guide][google-style-guide-link]
(hereafter GSG). In a few cases where the GSG gives latitude, we have made a
choice for consistency within this project. The following describes where we
differ from the GSG.

[google-style-guide-link]: https://google.github.io/styleguide/cppguide.html

## Include Guards

All header files should have include guards formatted like
`PROJECT_DIR_FILE_H`. This differs from the advice in the GSG in that ours do
not end with a trailing underscore.

[link to GSG's section on include guards](https://google.github.io/styleguide/cppguide.html#The__define_Guard)

## Reference Arguments

Function return values are preferred over argument out-params. However, when an
out-param is appropriate, prefer a non-const reference.

{'fraction_non_alphanumeric': 0.07876712328767123, 'fraction_numerical': 0.002054794520547945, 'mean_word_length': 4.891129032258065, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '475879', 'n_tokens_mistral': 412, 'n_tokens_neox': 395, 'n_words': 177}