File: IterablePathParameter.md

package info (click to toggle)
error-prone-java 2.18.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 23,204 kB
  • sloc: java: 222,992; xml: 1,319; sh: 25; makefile: 7
file content (26 lines) | stat: -rw-r--r-- 689 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[`java.nio.file.Path`] implements `Iterable<Path>`, and provides an iterator
over the name elements of the path. Declaring a parameter of type
`Iterable<Path>` is not recommended, since it allows clients to pass either an
`Iterable` of `Path`s, or a single `Path`. Using `Collection<Path>` prevents
clients from accidentally passing a single `Path`.

[`java.nio.file.Path`]: https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html

Example:

```java
void printPaths(Iterable<Path> paths) {
  for (Path path : paths) System.err.println(path);
}
```

```
printPaths(Paths.get("/tmp/hello"));
tmp
hello
```

```
printPaths(ImmutableList.of(Paths.get("/tmp/hello")));
/tmp/hello
```