- Index
- »
- syntax
- »
- SyntaxRules
type
SyntaxRules
src
@Js
@Serializable
const class SyntaxRules : Obj
SyntaxRules defines the syntax rules used to parse a specific programming language.
constructors
make |
Default constructor with it-block |
---|
fields
blockCommentEnd |
End token for multi-line block comments |
---|---|
blockCommentStart |
Start token for multi-line block comments |
blockCommentsNest |
Can block comments be nested (default is false). |
brackets |
Bracket characters defaults to "()[]{}". |
comments |
Start tokens for single line comments to end of line (list of strings). |
keywords |
List of the keywords. |
strs |
String and character literal styles |
methods
loadForExt |
Load syntax rules for given file extension using "etc/syntax/ext.props". |
---|---|
loadForFile |
Load syntax rules for given file. |
Slot Details
blockCommentEnd
blockCommentStart
blockCommentsNest
brackets
comments
keywords
loadForExt
src
static SyntaxRules? loadForExt(Str ext)
Load syntax rules for given file extension using "etc/syntax/ext.props". If no rules defined for extension return null.
loadForFile
src
static SyntaxRules? loadForFile(File file, Str? firstLine := null)
Load syntax rules for given file. If the file has already been parse then pass the first line to avoid re-reading the file to check the "#!" shebang. First we attempt to map the file extension to rules. If that fails, then we check the first line to see if defines a "#!" shebang. Return null if no rules can be determined.