(expr, enumSymbol, name)
| 84815 | return undefined; |
| 84816 | } |
| 84817 | function evaluateEnumMember(expr, enumSymbol, name) { |
| 84818 | var memberSymbol = enumSymbol.exports.get(name); |
| 84819 | if (memberSymbol) { |
| 84820 | var declaration = memberSymbol.valueDeclaration; |
| 84821 | if (declaration !== member) { |
| 84822 | if (declaration && isBlockScopedNameDeclaredBeforeUse(declaration, member) && ts.isEnumDeclaration(declaration.parent)) { |
| 84823 | return getEnumMemberValue(declaration); |
| 84824 | } |
| 84825 | error(expr, ts.Diagnostics.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums); |
| 84826 | return 0; |
| 84827 | } |
| 84828 | else { |
| 84829 | error(expr, ts.Diagnostics.Property_0_is_used_before_being_assigned, symbolToString(memberSymbol)); |
| 84830 | } |
| 84831 | } |
| 84832 | return undefined; |
| 84833 | } |
| 84834 | } |
| 84835 | function isConstantMemberAccess(node) { |
| 84836 | var type = getTypeOfExpression(node); |
no test coverage detected