diff options
author | Ken Thompson <ken@golang.org> | 2010-03-09 17:51:30 -0800 |
---|---|---|
committer | Ken Thompson <ken@golang.org> | 2010-03-09 17:51:30 -0800 |
commit | 05da857f354ad32072c3f7d897e1f43001e650b4 (patch) | |
tree | 02d22e4424d71c0d52b0e6e93dbaadaca0eacd2c /test/ken/cplx5.go | |
parent | 943040a11c0d0499bb48b9ca3e49b561cd2d6843 (diff) | |
download | go-05da857f354ad32072c3f7d897e1f43001e650b4.tar.gz |
1. decommit complex(float) conversion
2. add complex algorithm for map/chan
3. test for use of complex in
array, slice, field, chan, map,
field, pointer.
R=rsc
CC=golang-dev
http://codereview.appspot.com/384041
Diffstat (limited to 'test/ken/cplx5.go')
-rw-r--r-- | test/ken/cplx5.go | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/test/ken/cplx5.go b/test/ken/cplx5.go new file mode 100644 index 000000000..af2a1c57d --- /dev/null +++ b/test/ken/cplx5.go @@ -0,0 +1,54 @@ +// $G $D/$F.go && $L $F.$A && ./$A.out + +// Copyright 2010 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package main + +var a [12]complex +var s []complex +var c chan complex +var f struct { + c complex +} +var m map[complex]complex + +func main() { + // array of complex + for i := 0; i < len(a); i++ { + a[i] = cmplx(float(i), float(-i)) + } + println(a[5]) + + // slice of complex + s = make([]complex, len(a)) + for i := 0; i < len(s); i++ { + s[i] = a[i] + } + println(s[5]) + + // chan + c = make(chan complex) + go chantest(c) + println(<-c) + + // pointer of complex + v := a[5] + pv := &v + println(*pv) + + // field of complex + f.c = a[5] + println(f.c) + + // map of complex + m = make(map[complex]complex) + for i := 0; i < len(s); i++ { + m[-a[i]] = a[i] + } + println(m[5i-5]) + println(m[cmplx(-5, 5)]) +} + +func chantest(c chan complex) { c <- a[5] } |