Include Comment Style in LineComment and BlockComment Nodes

未关闭
#2,003 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
45/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞

调研方向

从 Esprima API 文档中链接的 Comment 部分开始,追踪 parser 如何表示 LineComment 和 BlockComment 节点。确认提议的 style 值,并更新文档和相关的 AST 行为,使 comment 节点公开 style,同时不移除现有属性。

由索引模型根据 Issue 内容生成。

描述

Multiple different Javascript snippets can result in a LineComment node:

// type1
<!-- type2
--> type3

From current Esprima's output there's no way to know which one of these 'styles' was used as a comment.

Since this is specific to LineComment nodes, it's possible to split the type of node from 'LineComment' into 3 node types (one for each style). But I assume that would completely break the API. I offer the solution of adding 'style' attribute to Comment nodes (both Block and Line). The values can be: ['//', '', '/*'].

I believe this API change is relatively minor since we're only adding an attribute without replacing any existing ones. We will have to change the Comment section in the Esprima API documentation. There shouldn't be any performance degradation since the comment style is known while parsing, it just wasn't exposed to the AST.

主要语言
TypeScript
星标
7.1k
派生
772
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

jquery/esprima 的其他 Issue

查看 jquery/esprima 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。