joytpl
Version:
joy - js template engine with short syntax and modern features
341 lines (340 loc) • 16.1 kB
JSON
{
"ASTy": {
"T": "Joy",
"L": {
"L": 1,
"C": 1,
"O": 0
},
"C": [
{
"T": "Condition",
"L": {
"L": 1,
"C": 1,
"O": 0
},
"A": {
"withElse": true
},
"C": [
{
"T": "ConditionWithExpression",
"L": {
"L": 1,
"C": 5,
"O": 4
},
"C": [
{
"T": "Binary",
"L": {
"L": 1,
"C": 5,
"O": 4
},
"A": {
"operator": "<"
},
"C": [
{
"T": "Identifier",
"L": {
"L": 1,
"C": 5,
"O": 4
},
"C": [
{
"T": "Name",
"L": {
"L": 1,
"C": 5,
"O": 4
},
"A": {
"value": "data"
}
},
{
"T": "Name",
"L": {
"L": 1,
"C": 10,
"O": 9
},
"A": {
"value": "n"
}
}
]
},
{
"T": "Number",
"L": {
"L": 1,
"C": 14,
"O": 13
},
"A": {
"value": "1"
}
}
]
},
{
"T": "Block",
"L": {
"L": 1,
"C": 16,
"O": 15
},
"C": [
{
"T": "Joy",
"L": {
"L": 1,
"C": 17,
"O": 16
},
"C": [
{
"T": "Text",
"L": {
"L": 1,
"C": 17,
"O": 16
},
"A": {
"value": "\r\n less\r\n"
}
}
]
}
]
}
]
},
{
"T": "ConditionWithExpression",
"L": {
"L": 4,
"C": 9,
"O": 39
},
"C": [
{
"T": "Binary",
"L": {
"L": 4,
"C": 9,
"O": 39
},
"A": {
"operator": "&&"
},
"C": [
{
"T": "Binary",
"L": {
"L": 4,
"C": 9,
"O": 39
},
"A": {
"operator": ">"
},
"C": [
{
"T": "Identifier",
"L": {
"L": 4,
"C": 9,
"O": 39
},
"C": [
{
"T": "Name",
"L": {
"L": 4,
"C": 9,
"O": 39
},
"A": {
"value": "data"
}
},
{
"T": "Name",
"L": {
"L": 4,
"C": 14,
"O": 44
},
"A": {
"value": "n"
}
}
]
},
{
"T": "Number",
"L": {
"L": 4,
"C": 18,
"O": 48
},
"A": {
"value": "1"
}
}
]
},
{
"T": "Binary",
"L": {
"L": 4,
"C": 23,
"O": 53
},
"A": {
"operator": "<"
},
"C": [
{
"T": "Identifier",
"L": {
"L": 4,
"C": 23,
"O": 53
},
"C": [
{
"T": "Name",
"L": {
"L": 4,
"C": 23,
"O": 53
},
"A": {
"value": "data"
}
},
{
"T": "Name",
"L": {
"L": 4,
"C": 28,
"O": 58
},
"A": {
"value": "n"
}
}
]
},
{
"T": "Number",
"L": {
"L": 4,
"C": 32,
"O": 62
},
"A": {
"value": "100"
}
}
]
}
]
},
{
"T": "Block",
"L": {
"L": 4,
"C": 36,
"O": 66
},
"C": [
{
"T": "Joy",
"L": {
"L": 4,
"C": 37,
"O": 67
},
"C": [
{
"T": "Text",
"L": {
"L": 4,
"C": 37,
"O": 67
},
"A": {
"value": "\r\n in range\r\n"
}
}
]
}
]
}
]
},
{
"T": "ConditionWithoutExpression",
"L": {
"L": 7,
"C": 6,
"O": 91
},
"C": [
{
"T": "Block",
"L": {
"L": 7,
"C": 6,
"O": 91
},
"C": [
{
"T": "Joy",
"L": {
"L": 7,
"C": 7,
"O": 92
},
"C": [
{
"T": "Text",
"L": {
"L": 7,
"C": 7,
"O": 92
},
"A": {
"value": "\r\n more\r\n"
}
}
]
}
]
}
]
}
]
},
{
"T": "Text",
"L": {
"L": 9,
"C": 2,
"O": 105
},
"A": {
"value": "\r\n"
}
}
]
}
}