<commit_before># Style Guide

## Naming

* Classes, enums, namespaces, and methods shall be named in `PascalCase`.
* Variables, fields, and properties shall be named in `camelCase`.
* Objects declared with either const or readonly shall be named with `UNDERSCORE_DELIMITED_ALLCAPS`.
* Names shall be descriptive of their purpose.
* Closely-related information should have names of the same length.

## Formatting

* There shall be no space between a method's name and its arguments.
* There shall be a space between a control structure (e.g. if, for) and its arguments.
* Class, method, property, control structure, et cetera bodies shall always be contained by curly brackets, even if they contain only one statement.
* Bracketed blocks shall begin the line after the control structure or declaration, e.g.,

```csharp
class Foo
{
    //…
}
```

* Indentation shall be one tab per rank.
* Wraparound shall be controlled. Excessively long single lines shall be cut at logical points.

## Layout

* The order of members within a class shall be: static fields, instanced fields, static properties, instanced properties, constructors, methods.
* There shall be an empty line between: the last field and the first property; the last property and the first constructor; each pair of constructors; the last constructor and the first method; each pair of methods.
* There shall be one class, enum, or struct in each file.
* Instanced fields and properties shall be initialized in constructors, not in declaration.

## Commenting

* Single-line comments shall be on their own line, not appended to any other code.
* There shall be a comment immediately preceding every method.
* Comments within the body of a method shall precede the content in question and be preceded by an empty line themselves.<commit_msg>doc: updated style guide with proposals<commit_after># Style Guide

## Naming

* Classes, enums, namespaces, and methods shall be named in `PascalCase`.
* Variables, fields, and properties shall be named in `camelCase`.
* Objects declared with either const or readonly shall be named with `UNDERSCORE_DELIMITED_ALLCAPS`.
* Names shall be descriptive of their purpose.
* Closely-related information should have names of the same length.

## Formatting

* There shall be no space between a method's name and its arguments.
* There shall be a space between a control structure (e.g. if, for) and its arguments.
* Class, method, property, control structure, et cetera bodies shall always be contained by curly brackets, even if they contain only one statement.
* Bracketed blocks shall begin the line after the control structure or declaration, e.g.,

```csharp
class Foo
{
    //…
}
```

* Indentation shall be one tab per rank.
* Lines shall have a length not exceeding 80 characters.
* Excessively long single lines shall be cut at logical points.

## Layout

* The order of members within a class shall be: static fields, instanced fields, static properties, instanced properties, constructors, methods.
* There shall be an empty line between: the last field and the first property; the last property and the first constructor; each pair of constructors; the last constructor and the first method; each pair of methods.
* There shall be one class, enum, or struct in each file.
* Instanced fields and properties shall be initialized in constructors, not in declaration.

## Commenting

* Single-line comments shall be on their own line, not appended to any other code.
* Single-line comments shall use the double-slash notation `//`, as opposed to the block-comment notation, `/* … */`.
* There shall be a comment immediately preceding every method.
* Comments within the body of a method shall precede the content in question and be preceded by an empty line themselves.
{'fraction_non_alphanumeric': 0.059369202226345084, 'fraction_numerical': 0.0005300821627352239, 'mean_word_length': 4.453757225433526, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, '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': '2168021', 'n_tokens_mistral': 953, 'n_tokens_neox': 917, 'n_words': 549}