|  | // Copyright (c) 2014, the Dart project authors.  Please see the AUTHORS file | 
|  | // for details. All rights reserved. Use of this source code is governed by a | 
|  | // BSD-style license that can be found in the LICENSE file. | 
|  |  | 
|  | import 'package:expect/expect.dart'; | 
|  |  | 
|  | class C { | 
|  | final field; | 
|  | const C(this.field); | 
|  | } | 
|  |  | 
|  | const c1 = const C(0.0); | 
|  | const c2 = const C(0); | 
|  | const c3 = const C(0.5 + 0.5); | 
|  | const c4 = const C(1); | 
|  |  | 
|  | main() { | 
|  | Expect.equals('0.0', test(c1)); //# 01: ok | 
|  | Expect.equals('0', test(c2)); //  //# 02: ok | 
|  | Expect.equals('1.0', test(c3)); //# 03: ok | 
|  | Expect.equals('1', test(c4)); //  //# 04: ok | 
|  | } | 
|  |  | 
|  | String test(C c) { | 
|  | switch (c) { | 
|  | case const C(0.0): | 
|  | return '0.0'; | 
|  | case const C(0): | 
|  | return '0'; | 
|  | case const C(1.0): | 
|  | return '1.0'; | 
|  | case const C(1): | 
|  | return '1'; | 
|  | } | 
|  | return null; | 
|  | } |