$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ts-morphで簡単に始めるAST操作 / ast-manipulation-with-ts...
Search
aose
October 30, 2024
Technology
0
1k
ts-morphで簡単に始めるAST操作 / ast-manipulation-with-ts-morph
簡単に始めるシリーズ第二弾として、TypeScriptにおけるASTをあまり知らない方や、まだ触ったことがない方に向けて、簡単にできるASTの操作・ライブラリについてご紹介します。
aose
October 30, 2024
Tweet
Share
More Decks by aose
See All by aose
alien-signals と自作 OSS で実現する フレームワーク非依存な ロジック共通化の探求 / Exploring Framework-Agnostic Logic Sharing with alien-signals and Custom OSS
aoseyuu
4
6.4k
UnJSで簡単に始めるCLIツール開発 / cli-tool-development-with-unjs
aoseyuu
2
900
Other Decks in Technology
See All in Technology
Modern Data Stack大好きマンが語るSnowflakeの魅力
sagara
0
280
Multimodal AI Driving Solutions to Societal Challenges
keio_smilab
PRO
1
120
生成AI・AIエージェント時代、データサイエンティストは何をする人なのか?そして、今学生であるあなたは何を学ぶべきか?
kuri8ive
2
1.8k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.3k
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
210
オープンデータの内製化から分かったGISデータを巡る行政の課題
naokim84
2
1.3k
AI (LLM) を活用する上で必須級のMCPをAmazon Q Developerで学ぼう / 20251127 Ikuma Yamashita
shift_evolve
PRO
2
100
小さな判断で育つ、大きな意思決定力 / 20251204 Takahiro Kinjo
shift_evolve
PRO
1
300
HIG学習用スライド
yuukiw00w
0
110
AI/MLのマルチテナント基盤を支えるコンテナ技術
pfn
PRO
5
720
Digitization部 紹介資料
sansan33
PRO
1
6.1k
Design System Documentation Tooling 2025
takanorip
1
930
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
GraphQLとの向き合い方2022年版
quramy
50
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Writing Fast Ruby
sferik
630
62k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
A Tale of Four Properties
chriscoyier
162
23k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Typedesign – Prime Four
hannesfritz
42
2.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Agile that works and the tools we love
rasmusluckow
331
21k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
ts-morphで簡単に始めるAST操作
Speaker 株式会社ヤプリ フロントエンドエンジニア 青木 優弥 / Aose Yuu • 2023/11〜
ヤプリjoin 来月からヤプリ2年目突入 • Vue Fes ボランティアスタッフ
None
None
ASTとは?
AST ↕ 抽象構文木
抽象構文木(AST:Abstract Syntax Tree) • プログラムのソースコードを階層的に表現するデータ構造 • ツリー構造で、各ノードがプログラムの構成要素を表す • ノード同士の親子関係=ソースコードの構造的な関係
None
ASTでできること • コードの解析(Linter, Formetter) • コードの変換・生成 • リファクタリング
ASTでできること • コードの解析(Linter, Formetter) • コードの変換・生成 • リファクタリング ⬇
気合いの正規表現🔥 漢の文字列置換💪 からの卒業
ts-morphとは?
ts-morph ↕ TypeScript Compiler APIの ラッパーライブラリ
超簡単な例
None
None
None
🤮
None
🥰
None
ts-morphを使った実例 vuex → pinia:簡単&部分的な例
None
None
None
None
None
None
ts-morphを使って AST操作を簡単に始めよう!