os: add more examples

Updates #16360.

Adds examples for:
+ Chmod
+ Chtimes
+ FileMode

Change-Id: I1b61ee0392fa3774593a7f36aaf0fa1e484c778b
Reviewed-on: https://go-review.googlesource.com/28963
Run-TryBot: Andrew Gerrand <adg@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Andrew Gerrand <adg@golang.org>
diff --git a/src/os/example_test.go b/src/os/example_test.go
index e82ee3e..a282552 100644
--- a/src/os/example_test.go
+++ b/src/os/example_test.go
@@ -5,8 +5,10 @@
 package os_test
 
 import (
+	"fmt"
 	"log"
 	"os"
+	"time"
 )
 
 func ExampleOpenFile() {
@@ -18,3 +20,35 @@
 		log.Fatal(err)
 	}
 }
+
+func ExampleChmod() {
+	if err := os.Chmod("some-filename", 0644); err != nil {
+		log.Fatal(err)
+	}
+}
+
+func ExampleChtimes() {
+	mtime := time.Date(2006, time.February, 1, 3, 4, 5, 0, time.UTC)
+	atime := time.Date(2007, time.March, 2, 4, 5, 6, 0, time.UTC)
+	if err := os.Chtimes("some-filename", atime, mtime); err != nil {
+		log.Fatal(err)
+	}
+}
+
+func ExampleFileMode() {
+	fi, err := os.Stat("some-filename")
+	if err != nil {
+		log.Fatal(err)
+	}
+
+	switch mode := fi.Mode(); {
+	case mode.IsRegular():
+		fmt.Println("regular file")
+	case mode.IsDir():
+		fmt.Println("directory")
+	case mode&os.ModeSymlink != 0:
+		fmt.Println("symbolic link")
+	case mode&os.ModeNamedPipe != 0:
+		fmt.Println("named pipe")
+	}
+}