tree-sitter/spec/runtime/languages/javascript/main.txt
2014-03-26 22:56:58 -07:00

77 lines
2.1 KiB
Text

==========================================
parses multiple statements
==========================================
var x = {};
firstFunction(x);
secondFunction(x);
---
(program
(statement (assignment (identifier) (object)))
(statement (function_call (identifier) (identifier)))
(statement (function_call (identifier) (identifier))))
==========================================
parses if statements
==========================================
if (isReady()) {
console.log(theData);
}
---
(program
(if_statement
(function_call (identifier))
(statement_block (statement (function_call (property_access (identifier) (identifier)) (identifier))))))
==========================================
parses if-else statements
==========================================
if (theCondition) {
firstFunction();
} else {
secondFunction();
}
---
(program (if_statement
(identifier)
(statement_block (statement (function_call (identifier))))
(statement_block (statement (function_call (identifier))))))
==================================================
parses if-else statements with multiple conditions
==================================================
if (firstValue) {
firstFunction();
} else if (secondValue)
secondFunction();
else {
thirdFunction();
}
---
(program
(if_statement (identifier)
(statement_block (statement (function_call (identifier))))
(if_statement (identifier)
(statement (function_call (identifier)))
(statement_block (statement (function_call (identifier)))))))
==========================================
parses function expressions and calls
==========================================
var x = {
theMethod: function(argA, argB) {
var x = argA;
}
};
x.theMethod(5, 6);
---
(program
(statement (assignment
(identifier)
(object (identifier) (function_expression
(formal_parameters (identifier) (identifier))
(statement_block (statement (assignment (identifier) (identifier))))))))
(statement (function_call
(property_access (identifier) (identifier))
(number) (number))))