// Copyright (C) 2018 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
desc: Valid FieldDefinition
info: |

  ClassElement :
    ...
    FieldDefinition ;
    ;

  FieldDefinition :
    ClassElementName Initializer _opt

  ClassElementName :
    PropertyName

  PropertyName :
    LiteralPropertyName
    ComputedPropertyName

  LiteralPropertyName :
    IdentifierName

  IdentifierName ::
    IdentifierStart
    IdentifierName IdentifierPart

  IdentifierStart ::
    UnicodeIDStart
    $
    _
    \ UnicodeEscapeSequence

  IdentifierPart::
    UnicodeIDContinue
    $
    \ UnicodeEscapeSequence
    <ZWNJ> <ZWJ>

  UnicodeIDStart::
    any Unicode code point with the Unicode property "ID_Start"

  UnicodeIDContinue::
    any Unicode code point with the Unicode property "ID_Continue"


  NOTE 3
  The sets of code points with Unicode properties "ID_Start" and
  "ID_Continue" include, respectively, the code points with Unicode
  properties "Other_ID_Start" and "Other_ID_Continue".

template: productions
features: [class-fields-public]
---*/

//- fields
$ = 1; _ = 1; \u{6F} = 1; \u2118 = 1; ZW_\u200C_NJ = 1; ZW_\u200D_J = 1
//- assertions
assert.sameValue(c.$, 1);
assert.sameValue(c._, 1);
assert.sameValue(c.\u{6F}, 1);
assert.sameValue(c.\u2118, 1);
assert.sameValue(c.ZW_\u200C_NJ, 1);
assert.sameValue(c.ZW_\u200D_J, 1);