std.block.navigate
backspace
added in 3.0
(backspace nav)
block
added in 3.0
(block nav)
returns the current block
block?
(block? zip)(block? zip step)
children
(children zip)(children zip step)
container?
(container? zip)(container? zip step)
delete
added in 3.0
(delete nav)
deletes the current element
delete-left
added in 3.0
(delete-left nav)
deletes left of the current expression
delete-right
added in 3.0
(delete-right nav)
deletes right of the current expression
delete-spaces-left
added in 4.0
(delete-spaces-left nav)
deletes spaces to the left
delete-spaces-right
added in 4.0
(delete-spaces-right nav)
deletes spaces to the left
display-navigator
added in 3.0
(display-navigator nav)
displays a string representing the navigator
down
added in 3.0
(down nav)
eof?
(eof? zip)(eof? zip step)
expression?
(expression? zip)(expression? zip step)
find-next
added in 4.0
(find-next nav pred)
finds the next expression
find-next-token
added in 3.0
(find-next-token nav data)
find-prev
added in 4.0
(find-prev nav pred)
finds the previous token or whitespace
find-prev-token
added in 4.0
(find-prev-token nav data)
from-status
added in 3.0
(from-status block)
constructs a navigator from a given status
height
(height zip)(height zip step)
info
(info zip)(info zip step)
insert-all
added in 3.0
(insert-all nav [data & more :as arr])
inserts all expressions into the block
insert-empty
added in 3.0
(insert-empty nav data)
inserts an element into an empty container
insert-newline
added in 3.0
(insert-newline nav)(insert-newline nav num)
insert newline/s into the block
insert-raw
added in 4.0
(insert-raw nav data)
insert-space
added in 3.0
(insert-space nav)(insert-space nav num)
insert space/s into the block
insert-token
added in 4.0
(insert-token nav data)
insert-token-to-left
added in 3.0
(insert-token-to-left nav data)
inserts an element to the left
insert-token-to-right
added in 3.0
(insert-token-to-right nav data)
inserts an element to the right
left
added in 3.0
(left nav)
moves to the left expression
left*
added in 3.0
(left* nav)
navigates to left element, including whitespace
left-anchor
added in 3.0
(left-anchor nav)
calculates the length to the last newline
left-expression
added in 3.0
(left-expression nav)
returns the expression on the left
left-expressions
added in 3.0
(left-expressions nav)
returns all expressions on the left
left-most
added in 3.0
(left-most nav)
moves to the left-most expression
left-most-token
added in 3.0
(left-most-token nav)
moves to the left-most token
left-most?
added in 3.0
(left-most? nav)
checks if navigator is at left-most
left-token
added in 3.0
(left-token nav)
length
(length zip)(length zip step)
level-empty?
added in 3.0
(level-empty? nav)
checks if current container has expressions
line-info
added in 3.0
(line-info nav)
returns the line info for the current block
linebreak?
(linebreak? zip)(linebreak? zip step)
linespace?
(linespace? zip)(linespace? zip step)
modifier?
(modifier? zip)(modifier? zip step)
nav-template
added in 3.0
(nav-template sym var)
generates a navigation function definition from a given symbol and a block tag function
navigator
added in 3.0
(navigator block)(navigator block opts)
creates a navigator for the block
navigator?
added in 3.0
(navigator? obj)
checks if object is navigator
next
added in 3.0
(next nav)
moves to the next expression
next-anchor
added in 3.0
(next-anchor nav)
moves to the next newline
next-token
added in 3.0
(next-token nav)
parse-first
added in 4.0
(parse-first string)
parses the navigator from the first form
parse-root
added in 3.0
(parse-root string)
parses the navigator from root string
parse-root-status
added in 3.0
(parse-root-status string)
parses string and creates a navigator from status
parse-string
added in 3.0
(parse-string string)
creates a navigator from string
position-left
added in 3.0
(position-left nav)
moves the cursor to left expression
position-right
added in 3.0
(position-right nav)
moves the cursor the right expression
prefixed
(prefixed zip)(prefixed zip step)
prev
added in 3.0
(prev nav)
moves to the previous expression
prev-anchor
added in 3.0
(prev-anchor nav)
moves to the previous newline
prev-token
added in 3.0
(prev-token nav)
moves to the previous token
replace
added in 3.0
(replace nav data)
replaces an element at the cursor
replace-splice
added in 3.0
(replace-splice nav data)
replaces an element at the cursor
right
added in 3.0
(right nav)
moves to the expression on the right
right*
added in 3.0
(right* nav)
navigates to right element, including whitespace
right-expression
added in 3.0
(right-expression nav)
returns the expression on the right
right-expressions
added in 3.0
(right-expressions nav)
returns all expressions on the right
right-most
added in 3.0
(right-most nav)
moves to the right-most expression
right-most-token
added in 3.0
(right-most-token nav)
moves to the right-most token
right-most?
added in 3.0
(right-most? nav)
checks if navigator is at right-most
right-token
added in 3.0
(right-token nav)
root-string
added in 3.0
(root-string nav)
returns the top level string
space?
(space? zip)(space? zip step)
string
(string zip)(string zip step)
suffixed
(suffixed zip)(suffixed zip step)
swap
added in 3.0
(swap nav f)
applies a function to the element at the current cursor position, replacing it with the result
tag
(tag zip)(tag zip step)
tighten
added in 3.0
(tighten nav)
removes extra spaces on both the left and right
tighten-left
added in 3.0
(tighten-left nav)
removes extra spaces on the left
tighten-right
added in 3.0
(tighten-right nav)
removes extra spaces on the right
token?
(token? zip)(token? zip step)
type
(type zip)(type zip step)
up
added in 3.0
(up nav)
navigates outside of the form
update-children
added in 3.0
(update-children nav children)
replaces the current children
update-step-inside
added in 3.0
(update-step-inside nav block)
updates the step position to within a block
update-step-inside-left
added in 3.0
(update-step-inside-left nav block)
updates the step position to within a block (-> {:position 0 3} (update-step-inside-left (construct/block #{}))) => {:position 0 2}
update-step-left
added in 3.0
(update-step-left nav lblock)
updates the step position to the left
update-step-outside
added in 3.0
(update-step-outside nav left-blocks)
updates the step position to be outside a block
update-step-right
added in 3.0
(update-step-right nav block)
updates the step position to the right
value
(value zip)(value zip step)
value-string
(value-string zip)(value-string zip step)
verify
(verify zip)(verify zip step)
void?
(void? zip)(void? zip step)
width
(width zip)(width zip step)