summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mgechev/dots/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/mgechev/dots/README.md')
-rw-r--r--vendor/github.com/mgechev/dots/README.md100
1 files changed, 100 insertions, 0 deletions
diff --git a/vendor/github.com/mgechev/dots/README.md b/vendor/github.com/mgechev/dots/README.md
new file mode 100644
index 0000000000..1203aef5f7
--- /dev/null
+++ b/vendor/github.com/mgechev/dots/README.md
@@ -0,0 +1,100 @@
+[![Build Status](https://travis-ci.org/mgechev/dots.svg?branch=master)](https://travis-ci.org/mgechev/dots)
+
+# Dots
+
+Implements the wildcard file matching in Go used by golint, go test etc.
+
+## Usage
+
+```go
+import "github.com/mgechev/dots"
+
+func main() {
+ result, err := dots.Resolve([]string{"./fixtures/..."}, []string{"./fixtures/foo"})
+ for _, f := range result {
+ fmt.Println(f);
+ }
+}
+```
+
+If we suppose that we have the following directory structure:
+
+```text
+├── README.md
+├── fixtures
+│   ├── bar
+│   │   ├── bar1.go
+│   │   └── bar2.go
+│   ├── baz
+│   │   ├── baz1.go
+│   │   ├── baz2.go
+│   │   └── baz3.go
+│   └── foo
+│   ├── foo1.go
+│   ├── foo2.go
+│   └── foo3.go
+└── main.go
+```
+
+The result will be:
+
+```text
+fixtures/bar/bar1.go
+fixtures/bar/bar2.go
+fixtures/baz/baz1.go
+fixtures/baz/baz2.go
+fixtures/baz/baz3.go
+```
+
+`dots` supports wildcard in both - the first and the last argument of `Resolve`, which means that you can ignore files based on a wildcard:
+
+```go
+dots.Resolve([]string{"github.com/mgechev/dots"}, []string{"./..."}) // empty list
+dots.Resolve([]string{"./fixtures/bar/..."}, []string{"./fixture/foo/...", "./fixtures/baz/..."}) // bar1.go, bar2.go
+```
+
+## Preserve package structure
+
+`dots` allow you to receive a slice of slices where each nested slice represents an individual package:
+
+```go
+dots.ResolvePackages([]string{"github.com/mgechev/dots/..."}, []string{})
+```
+
+So we will get the result:
+
+```text
+[
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/bar/bar1.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/bar/bar2.go"
+ ],
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/baz/baz1.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/baz/baz2.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/baz/baz3.go"
+ ],
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/foo/foo1.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/foo/foo2.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/dummy/foo/foo3.go"
+ ],
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/pkg/baz/baz1.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/pkg/baz/baz2.go"
+ ],
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/pkg/foo/foo1.go",
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/pkg/foo/foo2.go"
+ ],
+ [
+ "$GOROOT/src/github.com/mgechev/dots/fixtures/pkg/foo/bar/bar1.go"
+ ]
+]
+```
+
+This method is especially useful, when you want to perform type checking over given package from the result.
+
+## License
+
+MIT