| // Copyright (c) 2017, 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. |
| |
| /*member: main:[null|powerset={null}]*/ |
| main() { |
| enumValue(); |
| enumIndex(); |
| enumValues(); |
| enumToString1(); |
| enumToString2(); |
| } |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| /// Access an enum value. |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| enum Enum1 { a } |
| |
| /*member: enumValue:[exact=Enum1|powerset={N}]*/ |
| enumValue() => Enum1.a; |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| /// Access an enum 'index' property. |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| enum Enum2 { a } |
| |
| /*member: enumIndex:[exact=JSUInt31|powerset={I}]*/ |
| enumIndex() => Enum2.a. /*[exact=Enum2|powerset={N}]*/ index; |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| /// Access an enum 'values' property. |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| enum Enum3 { a, b } |
| |
| /*member: enumValues:Container([exact=JSUnmodifiableArray|powerset={I}], element: [exact=Enum3|powerset={N}], length: 2, powerset: {I})*/ |
| enumValues() => Enum3.values; |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| /// Call an enum 'toString' method on a singleton enum. |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| enum Enum4 { a } |
| |
| /*member: enumToString1:[exact=JSString|powerset={I}]*/ |
| enumToString1() { |
| return Enum4.a. /*invoke: [exact=Enum4|powerset={N}]*/ toString(); |
| } |
| |
| //////////////////////////////////////////////////////////////////////////////// |
| /// Call an enum 'toString' method on an enum with multiple values. |
| //////////////////////////////////////////////////////////////////////////////// |
| |
| enum Enum5 { a, b } |
| |
| /*member: enumToString2:[exact=JSString|powerset={I}]*/ |
| enumToString2() { |
| Enum5.b. /*invoke: [exact=Enum5|powerset={N}]*/ toString(); |
| return Enum5.a. /*invoke: [exact=Enum5|powerset={N}]*/ toString(); |
| } |