Skip to content

Commit

Permalink
docs(semantic): document the meaning of ReferenceFlags::Read and `W…
Browse files Browse the repository at this point in the history
…rite` (#7368)

closes #5165
  • Loading branch information
Boshen committed Nov 20, 2024
1 parent 82773cb commit 9b9d020
Showing 1 changed file with 23 additions and 1 deletion.
24 changes: 23 additions & 1 deletion crates/oxc_syntax/src/reference.rs
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,31 @@ bitflags! {
#[cfg_attr(feature = "serialize", derive(Serialize))]
pub struct ReferenceFlags: u8 {
const None = 0;
/// A symbol is being read as a Value
/// A symbol is being read as a Value.
///
/// This value can be derived from the spec:
///
/// Under `Runtime Semantics: Evaluation`, when [`GetValue`](https://tc39.es/ecma262/#sec-getvalue) is called
/// on a expression, and the expression is an `IdentifierReference`.
///
/// For example:
/// ```text
/// 1. Let lRef be ? Evaluation of Expression.
/// 2. Perform ? GetValue(lRef).
/// ```
const Read = 1 << 0;
/// A symbol is being written to in a Value context.
///
/// This value can be derived from the spec:
///
/// Under `Runtime Semantics: Evaluation`, when [`PutValue`](https://tc39.es/ecma262/#sec-putvalue) is called
/// on a expression, and the expression is an `IdentifierReference`.
///
/// For example:
/// ```text
/// 1. Let lhs be ? Evaluation of LeftHandSideExpression.
/// 2. Perform ? PutValue(lhs, newValue).
/// ```
const Write = 1 << 1;
/// Used in type definitions.
const Type = 1 << 2;
Expand Down

0 comments on commit 9b9d020

Please sign in to comment.