tree-sitter-d2/test/corpus/attributes.txt

439 lines
13 KiB
Text

================================================================================
Root attribute
================================================================================
direction: value
shape: oval
label: 'one two'
constraint: utehu
icon: ./test.svg
opacity: 0.5
fill: red
stroke: red
stroke-width: 5
stroke-dash: 4
border-radius: 1
font-color: red
shadow: false
multiple: true
animated: true
link: https://to
near: abc
--------------------------------------------------------------------------------
(source_file
(attribute (attr_key) (attr_value))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value (string (string_fragment))))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value (float)))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value (integer)))
(attribute (attr_key (reserved)) (attr_value (integer)))
(attribute (attr_key (reserved)) (attr_value (integer)))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value (boolean)))
(attribute (attr_key (reserved)) (attr_value (boolean)))
(attribute (attr_key (reserved)) (attr_value (boolean)))
(attribute (attr_key (reserved)) (attr_value))
(attribute (attr_key (reserved)) (attr_value))
)
================================================================================
Style attribute
================================================================================
foo.style.opacity: 0.5
foo.style.fill: red
foo.style.stroke: red
foo.style.stroke-width: 5
foo.style.stroke-dash: 4
foo.style.border-radius: 1
foo.style.font-color: red
foo.style.shadow: false
foo.style.multiple: true
foo.style.animated: true
foo.style.link: https://to
--------------------------------------------------------------------------------
(source_file
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (float)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean)))))
(shape (shape_key) (dot) (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))))
)
================================================================================
Block style attributes
================================================================================
foo.style: {
opacity: 0.5
fill: red
stroke: red
stroke-width: 5
stroke-dash: 4
border-radius: 1
font-color: red
shadow: false
multiple: true
animated: true
link: https://to
}
--------------------------------------------------------------------------------
(source_file
(shape
(shape_key) (dot)
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value (float)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value))
)
)
)
)
================================================================================
Container attributes
================================================================================
foo: {
shape: oval
label: 'Baz'
constraint: primary-key
icon: pathto
width: 100
height: 200
}
--------------------------------------------------------------------------------
(source_file
(container
(container_key)
(block
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (string (string_fragment))))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
)
)
)
================================================================================
Container style attributes
================================================================================
foo: {
style.opacity: 0.5
style.fill: red
style.stroke: red
style.stroke-width: 5
style.stroke-dash: 4
style.border-radius: 1
style.font-color: red
style.shadow: true
style.multiple: true
style.animated: true
style.link: https://to
}
--------------------------------------------------------------------------------
(source_file
(container
(container_key)
(block
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (float))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value)))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value)))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (integer))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value)))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value (boolean))))
(attribute (attr_key) (dot) (attribute (attr_key) (attr_value)))
)
)
)
================================================================================
Block style attributes inside a container
================================================================================
foo: {
style: {
opacity: 0.5
fill: red
stroke: red
stroke-width: 5
stroke-dash: 4
border-radius: 1
font-color: red
shadow: true
multiple: true
animated: true
link: https://to
}
}
--------------------------------------------------------------------------------
(source_file
(container
(container_key)
(block
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value (float)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value))
)
)
)
)
)
================================================================================
Block style attributes inside a connection
================================================================================
foo -> bar: {
style: {
opacity: 0.5
fill: red
stroke: red
stroke-width: 5
stroke-dash: 4
border-radius: 1
font-color: red
shadow: false
multiple: true
animated: true
link: https://to
}
}
--------------------------------------------------------------------------------
(source_file
(connection
(shape_key)
(arrow)
(shape_key)
(block
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value (float)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value))
)
)
)
)
)
================================================================================
Labels for connection arrowheads
================================================================================
foo -> bar: {
source-arrowhead: 0
target-arrowhead: 1
}
--------------------------------------------------------------------------------
(source_file
(connection
(shape_key)
(arrow)
(shape_key)
(block
(attribute
(attr_key)
(label)
)
(attribute
(attr_key)
(label)
)
)
)
)
================================================================================
Define attributes for connection in single-line
================================================================================
foo -> bar: {source-arrowhead: 0; target-arrowhead: 1}
--------------------------------------------------------------------------------
(source_file
(connection
(shape_key)
(arrow)
(shape_key)
(block
(attribute
(attr_key)
(label)
)
(attribute
(attr_key)
(label)
)
)
)
)
================================================================================
Block style attributes inside a connection arrowhead
================================================================================
foo -> bar: {
target-arrowhead: {
style: {
opacity: 0.5
fill: red
stroke: red
stroke-width: 5
stroke-dash: 4
border-radius: 1
font-color: red
shadow: false
multiple: true
animated: true
link: https://to
}
}
}
--------------------------------------------------------------------------------
(source_file
(connection
(shape_key)
(arrow)
(shape_key)
(block
(attribute
(attr_key)
(block
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value (float)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value (boolean)))
(attribute (attr_key) (attr_value))
)
)
)
)
)
)
)
================================================================================
Container attributes inside a connection arrowhead
================================================================================
foo -> bar: {
target-arrowhead: {
shape: oval
label: 'Baz'
constraint: primary-key
icon: pathto
width: 100
height: 200
}
}
--------------------------------------------------------------------------------
(source_file
(connection
(shape_key)
(arrow)
(shape_key)
(block
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (string (string_fragment))))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value))
(attribute (attr_key) (attr_value (integer)))
(attribute (attr_key) (attr_value (integer)))
)
)
)
)
)
================================================================================
Declire style attributes in single-line
================================================================================
foo.style: {opacity: 0.5; fill: red}
--------------------------------------------------------------------------------
(source_file
(shape
(shape_key) (dot)
(attribute
(attr_key)
(block
(attribute (attr_key) (attr_value (float)))
(attribute (attr_key) (attr_value))
)
)
)
)