File tree Expand file tree Collapse file tree 8 files changed +121
-3
lines changed Expand file tree Collapse file tree 8 files changed +121
-3
lines changed Original file line number Diff line number Diff line change @@ -13,5 +13,5 @@ func NewRegister() mapping.Register {
1313
1414// Regist -- 登録します.
1515func (r * register ) Regist (m mapping.ExampleMapping ) {
16- m ["import01 " ] = Basic
16+ m ["imports_basic " ] = Basic
1717}
Original file line number Diff line number Diff line change 11package imports
22
3- import (
43// 現状のコードでは利用していないが、後で利用するときなどはアンダーバーのエイリアスをつけておくと便利
54// _ "fmt"
6- )
75
86// Basic は、GO言語の import に関するサンプルです.
97func Basic () error {
@@ -19,4 +17,18 @@ func Basic() error {
1917 // ことで、「参照されていないパッケージを強制的にプログラム内に組み込む」ことが
2018 // 出来るようになる。
2119 return nil
20+
21+ /*
22+ $ task
23+ task: [build] go build .
24+ task: [run] ./try-golang -onetime
25+
26+ ENTER EXAMPLE NAME: imports_basic
27+
28+ [Name] "imports_basic"
29+
30+
31+ [Elapsed] 830ns
32+ */
33+
2234}
Original file line number Diff line number Diff line change @@ -28,4 +28,19 @@ func DuckTyping2() error {
2828 fn (myType ("" ))
2929
3030 return nil
31+
32+ /*
33+ $ task
34+ task: [build] go build .
35+ task: [run] ./try-golang -onetime
36+
37+ ENTER EXAMPLE NAME: interface_ducktyping2
38+
39+ [Name] "interface_ducktyping2"
40+ [fn] interfaces.myType
41+
42+
43+ [Elapsed] 9.56µs
44+ */
45+
3146}
Original file line number Diff line number Diff line change @@ -39,4 +39,20 @@ func Basic() error {
3939 }
4040
4141 return nil
42+
43+ /*
44+ $ task
45+ task: [build] go build .
46+ task: [run] ./try-golang -onetime
47+
48+ ENTER EXAMPLE NAME: interface_basic
49+
50+ [Name] "interface_basic"
51+ [0]: [10](*interfaces.mySt01)
52+ [1]: [20](*interfaces.mySt02)
53+
54+
55+ [Elapsed] 44.52µs
56+ */
57+
4258}
Original file line number Diff line number Diff line change @@ -66,4 +66,21 @@ func Composition() error {
6666 f3 (v )
6767
6868 return nil
69+
70+ /*
71+ $ task
72+ task: [build] go build .
73+ task: [run] ./try-golang -onetime
74+
75+ ENTER EXAMPLE NAME: interface_composition
76+
77+ [Name] "interface_composition"
78+ hello
79+ world
80+ hello world
81+
82+
83+ [Elapsed] 7.84µs
84+ */
85+
6986}
Original file line number Diff line number Diff line change @@ -49,6 +49,22 @@ func DuckTyping() error {
4949 callHello (impl )
5050
5151 return nil
52+
53+ /*
54+ $ task
55+ task: [build] go build .
56+ task: [run] ./try-golang -onetime
57+
58+ ENTER EXAMPLE NAME: interface_ducktyping
59+
60+ [Name] "interface_ducktyping"
61+ interfaces.helloNotImpl は、 Hello() を実装していない
62+ interfaces.helloImpl は、 Hello() を実装している (hello world)
63+
64+
65+ [Elapsed] 13.03µs
66+ */
67+
5268}
5369
5470func callHello (v interface {}) {
Original file line number Diff line number Diff line change @@ -57,6 +57,32 @@ func NilOrNotNil() error {
5757 output .Stdoutl ("[e.Error()]" , e .Error ())
5858
5959 return nil
60+
61+ /*
62+ $ task
63+ task: [build] go build .
64+ task: [run] ./try-golang -onetime
65+
66+ ENTER EXAMPLE NAME: interface_nil_notnil
67+
68+ [Name] "interface_nil_notnil"
69+ [i == nil] true
70+ [o == nil] false
71+ [o2 == nil] true
72+ [i == o ] true
73+ [i == o2] false
74+ [returnNilINil() == nil] true
75+ [returnNotnilNil() == nil] false
76+ [nilnil == e] false
77+ [notnilnil == e] true
78+ [notnilnil.Error()] <nil>
79+ [e.Error()] <nil>
80+ [e.Error()] 100
81+
82+
83+ [Elapsed] 119.37µs
84+ */
85+
6086}
6187
6288type myE int
Original file line number Diff line number Diff line change @@ -22,4 +22,20 @@ func VerifyInterfaceCompliance() error {
2222 }
2323
2424 return nil
25+
26+ /*
27+ $ task
28+ task: [build] go build .
29+ task: [run] ./try-golang -onetime
30+
31+ ENTER EXAMPLE NAME: interface_verify_compliance
32+
33+ [Name] "interface_verify_compliance"
34+ go.mod
35+ go.sum
36+
37+
38+ [Elapsed] 165.59µs
39+ */
40+
2541}
You can’t perform that action at this time.
0 commit comments