Skip to content

Completely fluent style for checking #13

@phkiener

Description

I dig fluent interfaces. There now is a fluent builder for rules, but I feel like the checking in general could be done via a fluent interface.

In my mind, it'd be like

var violations = ForProject("path/to/sln").Check()
    .That.Project("SomeCoolProject").DoesNotReference("*Test")
    .That.AllProjects.Import("Common.props")
    .That.Project("*.Database").DoesNotReference("*").Except("EF.Core")
    .Result()

This would allow different kinds of checks to weave together... instead of checking "horizontally" - e.g. all references, all duplicates, ... - you could check "vertically" for projects or layers.

Of course, actual names are subject for debate 😉

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions