Comments (2)
Somewhat related: LeadingTrivia
and TrailingTrivia
on SyntaxToken
should probably be changed to SyntaxItemList<SyntaxTrivia>
.
from celerity.
This begs the question, though: Should we also expose
GetText()
andGetFullText()
? That would require aParent
property. But then that might signal that the list is a node in the tree, which is not actually the case. We'd then also have to consider tree traversal methods, at which point these lists start to look an awful lot likeSyntaxItem
s in their own right...
Decision: Tree
property, Parent
property, Span
/FullSpan
properties, ToString()
/ToFullString()
methods, GetText()
/GetFullText()
methods. No tree traversal methods. In the future, we could consider extracting these into an interface if there's a use case for that.
(I think this will also allow us to reduce the amount of SetParent()
calls we emit in generated node classes.)
from celerity.
Related Issues (20)
- Support `osx-arm64` in Vezel.Celerity.Runtime.Native HOT 1
- Migrate to ESLint Stylistic HOT 3
- Migrate to new ESLint configuration file format HOT 3
- Language idea: Fewer semicolons in block expressions
- Switch minimum TFM to `net9.0`
- Implement code formatting
- Remove pre-release flag from VS Code extension
- Configure all ESLint rules
- CI runs should upload build artifacts for debugging purposes
- `assert` should be an expression instead of a statement
- Make workspace APIs more flexible
- Project and workspace APIs should reject paths with `.` or `..` segments HOT 1
- Design and implement the AIR linear IR for the JIT compiler
- Introduce a concept of project solutions
- Redesign array patterns or consider array slicing HOT 1
- Add some example programs to the documentation HOT 2
- Language idea: Extended module type syntax and new module pattern syntax HOT 1
- Switch to Draco.Lsp for the language server HOT 1
- Implement semantic analysis for `tail ret` expressions
- Complete the upgrade to .NET 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from celerity.