Next: , Previous: , Up: Software Evolution Library Index   [Contents][Index]


A.54 SOFTWARE-EVOLUTION-LIBRARY/SOFTWARE/TREE-SITTER

Class: arguments-ast [sel/sw/ts]

Class precedence list: arguments-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are lists of arguments.

Compiler Macro: ast-template [sel/sw/ts] template class &rest args

Compile-time validity checking for AST templates.

Generic Function: ast-type-to-rebind-p [sel/sw/ts] ast

Return t if AST is of a type where its variables/functions should be rebound.

Class: bash [sel/sw/ts]

Class precedence list: bash, bash-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

bash tree-sitter software representation.

Class: binary-ast [sel/sw/ts]

Class precedence list: binary-ast, expression-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are binary expressions.

Class: boolean-ast [sel/sw/ts]

Class precedence list: boolean-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are booleans.

Class: boolean-false-ast [sel/sw/ts]

Class precedence list: boolean-false-ast, boolean-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are false booleans.

Class: boolean-true-ast [sel/sw/ts]

Class precedence list: boolean-true-ast, boolean-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are true booleans.

Class: c [sel/sw/ts]

Class precedence list: c, tree-sitter, software-indentation, parseable, compilable, normal-scope, c-slash-cpp, include-paths-mixin, software, oid-object, file, standard-object, slot-object, t

C tree-sitter software representation.

Class: c-source-text-fragment [sel/sw/ts]

Class precedence list: c-source-text-fragment, c-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, source-text-fragment, standard-object, slot-object, t

Generated for source text fragments.

Class: c/cpp [sel/sw/ts]

Class precedence list: c-slash-cpp, include-paths-mixin, software, oid-object, standard-object, slot-object, t

Mix-in class for tree-sitter c and cpp classes

Class: c/cpp-! [sel/sw/ts]

Class precedence list: c-slash-cpp-exclamationpoint, ast, standard-object, slot-object, t

Mix-in for c/cpp ! AST classes.

Class: c/cpp-!= [sel/sw/ts]

Class precedence list: c-slash-cpp-exclamationpoint-equals, ast, standard-object, slot-object, t

Mix-in for c/cpp != AST classes.

Class: c/cpp-% [sel/sw/ts]

Class precedence list: c-slash-cpp-%, ast, standard-object, slot-object, t

Mix-in for c/cpp % AST classes.

Class: c/cpp-& [sel/sw/ts]

Class precedence list: c-slash-cpp-ampersand, ast, standard-object, slot-object, t

Mix-in for c/cpp & AST classes.

Class: c/cpp-&& [sel/sw/ts]

Class precedence list: c-slash-cpp-ampersand-ampersand, ast, standard-object, slot-object, t

Mix-in for c/cpp && AST classes.

Class: c/cpp-* [sel/sw/ts]

Class precedence list: c-slash-cpp-star, ast, standard-object, slot-object, t

Mix-in for c/cpp * AST classes.

Class: c/cpp-+ [sel/sw/ts]

Class precedence list: c-slash-cpp-plus, ast, standard-object, slot-object, t

Mix-in for c/cpp + AST classes.

Class: c/cpp-++ [sel/sw/ts]

Class precedence list: c-slash-cpp-plus-plus, ast, standard-object, slot-object, t

Mix-in for c/cpp ++ AST classes.

Class: c/cpp-_- [sel/sw/ts]

Class precedence list: c-slash-cpp-_-, ast, standard-object, slot-object, t

Mix-in for c/cpp AST classes.

Class: c/cpp-_-_- [sel/sw/ts]

Class precedence list: c-slash-cpp-_-_-, ast, standard-object, slot-object, t

Mix-in for c/cpp AST classes.

Class: c/cpp-/ [sel/sw/ts]

Class precedence list: c-slash-cpp-slash, ast, standard-object, slot-object, t

Mix-in for c/cpp / AST classes.

Class: c/cpp-< [sel/sw/ts]

Class precedence list: c-slash-cpp-lt, ast, standard-object, slot-object, t

Mix-in for c/cpp < AST classes.

Class: c/cpp-<< [sel/sw/ts]

Class precedence list: c-slash-cpp-lt-lt, ast, standard-object, slot-object, t

Mix-in for c/cpp << AST classes.

Class: c/cpp-<= [sel/sw/ts]

Class precedence list: c-slash-cpp-lt-equals, ast, standard-object, slot-object, t

Mix-in for c/cpp <= AST classes.

Class: c/cpp-== [sel/sw/ts]

Class precedence list: c-slash-cpp-equals-equals, ast, standard-object, slot-object, t

Mix-in for c/cpp == AST classes.

Class: c/cpp-> [sel/sw/ts]

Class precedence list: c-slash-cpp-gt, ast, standard-object, slot-object, t

Mix-in for c/cpp > AST classes.

Class: c/cpp->= [sel/sw/ts]

Class precedence list: c-slash-cpp-gt-equals, ast, standard-object, slot-object, t

Mix-in for c/cpp >= AST classes.

Class: c/cpp->> [sel/sw/ts]

Class precedence list: c-slash-cpp-gt-gt, ast, standard-object, slot-object, t

Mix-in for c/cpp >> AST classes.

Class: c/cpp-array-declarator [sel/sw/ts]

Class precedence list: c-slash-cpp-array-declarator, ast, standard-object, slot-object, t

Mix-in for c/cpp array declarator AST classes.

Class: c/cpp-binary-expression [sel/sw/ts]

Class precedence list: c-slash-cpp-binary-expression, ast, standard-object, slot-object, t

Mix-in for c/cpp binary expression AST classes.

Class: c/cpp-break-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-break-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp break statement AST classes.

Class: c/cpp-call-expression [sel/sw/ts]

Class precedence list: c-slash-cpp-call-expression, ast, standard-object, slot-object, t

Mix-in for c/cpp call expression AST classes.

Class: c/cpp-case-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-case-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp case statement AST classes.

Class: c/cpp-char-literal [sel/sw/ts]

Class precedence list: c-slash-cpp-char-literal, ast, standard-object, slot-object, t

Mix-in for c/cpp char literal AST classes.

Class: c/cpp-comment [sel/sw/ts]

Class precedence list: c-slash-cpp-comment, ast, standard-object, slot-object, t

Mix-in for c/cpp comment AST classes.

Class: c/cpp-compound-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-compound-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp compound statement AST classes.

Class: c/cpp-condition-clause [sel/sw/ts]

Class precedence list: c-slash-cpp-condition-clause, ast, standard-object, slot-object, t

Mix-in for c/cpp condition clause AST classes.

Class: c/cpp-continue-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-continue-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp continue statement AST classes.

Class: c/cpp-declaration [sel/sw/ts]

Class precedence list: c-slash-cpp-declaration, ast, standard-object, slot-object, t

Mix-in for c/cpp declaration AST classes.

Class: c/cpp-declarator [sel/sw/ts]

Class precedence list: c-slash-cpp-declarator, ast, standard-object, slot-object, t

Mix-in for c/cpp declarator AST classes.

Class: c/cpp-do-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-do-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp do statement AST classes.

Class: c/cpp-enum-specifier [sel/sw/ts]

Class precedence list: c-slash-cpp-enum-specifier, ast, standard-object, slot-object, t

Mix-in for c/cpp enum specifier AST classes.

Class: c/cpp-enumerator [sel/sw/ts]

Class precedence list: c-slash-cpp-enumerator, ast, standard-object, slot-object, t

Mix-in for c/cpp enumerator AST classes.

Class: c/cpp-error [sel/sw/ts]

Class precedence list: c-slash-cpp-error, ast, standard-object, slot-object, t

Mix-in for c/cpp error AST classes.

Class: c/cpp-expression-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-expression-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp expression statement AST classes.

Class: c/cpp-field-declaration [sel/sw/ts]

Class precedence list: c-slash-cpp-field-declaration, ast, standard-object, slot-object, t

Mix-in for c/cpp field declaration AST classes.

Class: c/cpp-function-declarator [sel/sw/ts]

Class precedence list: c-slash-cpp-function-declarator, ast, standard-object, slot-object, t

Mix-in for c/cpp function declarator AST classes.

Class: c/cpp-function-definition [sel/sw/ts]

Class precedence list: c-slash-cpp-function-definition, ast, standard-object, slot-object, t

Mix-in for c/cpp function definition AST classes.

Class: c/cpp-identifier [sel/sw/ts]

Class precedence list: c-slash-cpp-identifier, ast, standard-object, slot-object, t

Mix-in for c/cpp identifier AST classes.

Class: c/cpp-if-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-if-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp if statement AST classes.

Class: c/cpp-number-literal [sel/sw/ts]

Class precedence list: c-slash-cpp-number-literal, ast, standard-object, slot-object, t

Mix-in for c/cpp number literal AST classes.

Class: c/cpp-parameter-declaration [sel/sw/ts]

Class precedence list: c-slash-cpp-parameter-declaration, ast, standard-object, slot-object, t

Mix-in for c/cpp parameter declaration AST classes.

Class: c/cpp-parenthesized-declarator [sel/sw/ts]

Class precedence list: c-slash-cpp-parenthesized-declarator, ast, standard-object, slot-object, t

Mix-in for c/cpp parenthesized declarator AST classes.

Class: c/cpp-pointer-declarator [sel/sw/ts]

Class precedence list: c-slash-cpp-pointer-declarator, ast, standard-object, slot-object, t

Mix-in for c/cpp pointer declarator AST classes.

Class: c/cpp-preproc-arg [sel/sw/ts]

Class precedence list: c-slash-cpp-preproc-arg, ast, standard-object, slot-object, t

Mix-in for c/cpp preproc arg AST classes.

Class: c/cpp-preproc-def [sel/sw/ts]

Class precedence list: c-slash-cpp-preproc-def, ast, standard-object, slot-object, t

Mix-in for c/cpp preproc def AST classes.

Class: c/cpp-preproc-function-def [sel/sw/ts]

Class precedence list: c-slash-cpp-preproc-function-def, ast, standard-object, slot-object, t

Mix-in for c/cpp preproc function def AST classes.

Class: c/cpp-preproc-include [sel/sw/ts]

Class precedence list: c-slash-cpp-preproc-include, ast, standard-object, slot-object, t

Mix-in for c/cpp preproc include AST classes.

Class: c/cpp-preproc-params [sel/sw/ts]

Class precedence list: c-slash-cpp-preproc-params, ast, standard-object, slot-object, t

Mix-in for c/cpp preproc params AST classes.

Class: c/cpp-primitive-type [sel/sw/ts]

Class precedence list: c-slash-cpp-primitive-type, ast, standard-object, slot-object, t

Mix-in for c/cpp primitive type AST classes.

Class: c/cpp-return-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-return-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp return statement AST classes.

Class: c/cpp-string-literal [sel/sw/ts]

Class precedence list: c-slash-cpp-string-literal, ast, standard-object, slot-object, t

Mix-in for c/cpp string literal AST classes.

Class: c/cpp-struct-specifier [sel/sw/ts]

Class precedence list: c-slash-cpp-struct-specifier, ast, standard-object, slot-object, t

Mix-in for c/cpp struct specifier AST classes.

Class: c/cpp-switch-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-switch-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp switch statement AST classes.

Class: c/cpp-type-definition [sel/sw/ts]

Class precedence list: c-slash-cpp-type-definition, ast, standard-object, slot-object, t

Mix-in for c/cpp type definition AST classes.

Class: c/cpp-type-identifier [sel/sw/ts]

Class precedence list: c-slash-cpp-type-identifier, ast, standard-object, slot-object, t

Mix-in for c/cpp type identifier AST classes.

Class: c/cpp-union-specifier [sel/sw/ts]

Class precedence list: c-slash-cpp-union-specifier, ast, standard-object, slot-object, t

Mix-in for c/cpp union specifier AST classes.

Class: c/cpp-while-statement [sel/sw/ts]

Class precedence list: c-slash-cpp-while-statement, ast, standard-object, slot-object, t

Mix-in for c/cpp while statement AST classes.

Class: c/cpp-^ [sel/sw/ts]

Class precedence list: c-slash-cpp-^, ast, standard-object, slot-object, t

Mix-in for c/cpp ^ AST classes.

Class: c/cpp-pipe [sel/sw/ts]

Class precedence list: c-slash-cpp-pipe, ast, standard-object, slot-object, t

Mix-in for c/cpp | AST classes.

Class: c/cpp-pipe-pipe [sel/sw/ts]

Class precedence list: c-slash-cpp-pipe-pipe, ast, standard-object, slot-object, t

Mix-in for c/cpp || AST classes.

Class: c/cpp-~ [sel/sw/ts]

Class precedence list: c-slash-cpp-~, ast, standard-object, slot-object, t

Mix-in for c/cpp ~ AST classes.

Class: call-ast [sel/sw/ts]

Class precedence list: call-ast, expression-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are calls.

Generic Function: call-name [sel/sw/ts] call-ast

Return the name of call-ast.

Class: catch-ast [sel/sw/ts]

Class precedence list: catch-ast, statement-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are error catch clauses.

Class: char-ast [sel/sw/ts]

Class precedence list: char-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literal chars.

Class: class-ast [sel/sw/ts]

Class precedence list: class-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are classes.

Class: comment-ast [sel/sw/ts]

Class precedence list: comment-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are comments.

Superclass of every generated LANGUAGE-comment class.

Generic Function: comments-for [sel/sw/ts] software ast

Return the comments for AST in software.

Generic Function: comparisonp [sel/sw/ts] ast

Is AST a comparison?

Class: compound-ast [sel/sw/ts]

Class precedence list: compound-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are compounds.

Class: conditional-ast [sel/sw/ts]

Class precedence list: conditional-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that have a conditional.

Class: control-flow-ast [sel/sw/ts]

Class precedence list: control-flow-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that have control flow.

Generic Function: control-flow-condition [sel/sw/ts] control-flow-ast

Return the condition from a control-flow-ast.

Class: cpp [sel/sw/ts]

Class precedence list: cpp, tree-sitter, software-indentation, parseable, compilable, normal-scope, c-slash-cpp, include-paths-mixin, software, oid-object, file, standard-object, slot-object, t

cpp tree-sitter software representation.

Class: cpp-source-text-fragment [sel/sw/ts]

Class precedence list: cpp-source-text-fragment, cpp-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, source-text-fragment, standard-object, slot-object, t

Generated for source text fragments.

Generic Function: declarator-name [sel/sw/ts] ast

Returns a string that is the name of a things declared in a declarator, or in the first element of a list of declarators. Return nil on the empty list.

Class: definition-ast [sel/sw/ts]

Class precedence list: definition-ast, ast, standard-object, slot-object, t

AST for something that associates a name with a thing. The name string is obtained by by definition-name

Class: ecma [sel/sw/ts]

Class precedence list: ecma, software, oid-object, standard-object, slot-object, t

Mix-in class for tree-sitter ECMAScript variants.

Class: ecma-comment [sel/sw/ts]

Class precedence list: ecma-comment, ast, standard-object, slot-object, t

Mix-in for ecma comment AST classes.

Class: ecma-error [sel/sw/ts]

Class precedence list: ecma-error, ast, standard-object, slot-object, t

Mix-in for ecma error AST classes.

Generic Function: enclosing-definition [sel/sw/ts] sw ast

Find the enclosing definition AST in which AST resides, or nil if none.

Generic Function: end-of-parameter-list [sel/sw/ts] software node

Find the end position of the parameters of function-node.

Class: expression-ast [sel/sw/ts]

Class precedence list: expression-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are expressions.

Generic Function: find-following [sel/sw/ts] type software ast

Return any siblings of type following AST in software.

Generic Function: find-preceding [sel/sw/ts] type software ast

Return any siblings of type preceding AST in software.

Class: float-ast [sel/sw/ts]

Class precedence list: float-ast, number-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literal floats.

Class: function-ast [sel/sw/ts]

Class precedence list: function-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are functions.

Generic Function: function-body [sel/sw/ts] ast

Return the body of AST.

Generic Function: function-name [sel/sw/ts] node

Extract the name of the function from node. If node is not a function node, return nil.

Generic Function: get-vars [sel/sw/ts] obj ast

Get the variables that are bound by AST.

Class: golang [sel/sw/ts]

Class precedence list: golang, tree-sitter, software-indentation, parseable, software, oid-object, file, standard-object, slot-object, t

golang tree-sitter software representation.

Class: goto-ast [sel/sw/ts]

Class precedence list: goto-ast, statement-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are goto statements.

Class: identifier-ast [sel/sw/ts]

Class precedence list: identifier-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are identifiers.

Class: if-ast [sel/sw/ts]

Class precedence list: if-ast, control-flow-ast, conditional-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are ifs.

Generic Function: imports [sel/sw/ts] ast

Return a list of the imports of AST. Every element in the list has the following form: (full-name alias/nickname . named-imports)

Class: integer-ast [sel/sw/ts]

Class precedence list: integer-ast, number-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literal integers.

Class: java [sel/sw/ts]

Class precedence list: java, tree-sitter, software-indentation, parseable, software, oid-object, file, standard-object, slot-object, t

java tree-sitter software representation.

Class: javascript [sel/sw/ts]

Class precedence list: javascript, tree-sitter, software-indentation, parseable, normal-scope, ecma, software, oid-object, file, standard-object, slot-object, t

javascript tree-sitter software representation.

Class: json [sel/sw/ts]

Class precedence list: json, tree-sitter, software-indentation, parseable, software, oid-object, file, standard-object, slot-object, t

JSON tree-sitter software representation.

Class: json-doublequote [sel/sw/ts]

Class precedence list: json-doublequote, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ’"’

Class: json-, [sel/sw/ts]

Class precedence list: json-,, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ','

Class: json-_-value [sel/sw/ts]

Class precedence list: json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for _value.

Class: json-: [sel/sw/ts]

Class precedence list: json-:, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ':'

Class: json-array [sel/sw/ts]

Class precedence list: json-array, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Slots:

Generated for array.

Class: json-ast [sel/sw/ts]

Class precedence list: json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Slots:

AST for JSON from input via tree-sitter.

Class: json-comment [sel/sw/ts]

Class precedence list: json-comment, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, comment-ast, ast, stored-hash, standard-object, slot-object, t

Generated for parsed comments.

Class: json-document [sel/sw/ts]

Class precedence list: json-document, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Slots:

Generated for document.

Class: json-error [sel/sw/ts]

Class precedence list: json-error, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, parse-error-ast, ast, stored-hash, standard-object, slot-object, t

Generated for parsing errors.

Class: json-escape-sequence [sel/sw/ts]

Class precedence list: json-escape-sequence, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for escape_sequence.

Class: json-false [sel/sw/ts]

Class precedence list: json-false, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for false.

Class: json-inner-whitespace [sel/sw/ts]

Class precedence list: json-inner-whitespace, json-ast, inner-whitespace, text-fragment, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for inner whitespace.

Class: json-mutation [sel/sw/ts]

Class precedence list: json-mutation, parseable-mutation, mutation, oid-object, standard-object, slot-object, t

Slots:

Mutation interface for JSON software objects.

Class: json-number [sel/sw/ts]

Class precedence list: json-number, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for number.

Class: json-object [sel/sw/ts]

Class precedence list: json-object, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Slots:

Generated for object.

Class: json-pair [sel/sw/ts]

Class precedence list: json-pair, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Slots:

Generated for pair.

Class: json-source-text-fragment [sel/sw/ts]

Class precedence list: json-source-text-fragment, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, source-text-fragment, standard-object, slot-object, t

Generated for source text fragments.

Class: json-string [sel/sw/ts]

Class precedence list: json-string, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for string.

Class: json-string-content [sel/sw/ts]

Class precedence list: json-string-content, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for string_content.

Class: json-true [sel/sw/ts]

Class precedence list: json-true, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for true.

Class: json-square-brace-left [sel/sw/ts]

Class precedence list: json-square-brace-left, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol '['

Class: json-square-brace-right [sel/sw/ts]

Class precedence list: json-square-brace-right, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ']'

Class: json-curly-brace-left [sel/sw/ts]

Class precedence list: json-curly-brace-left, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ’{’

Class: json-curly-brace-right [sel/sw/ts]

Class precedence list: json-curly-brace-right, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, terminal-symbol, standard-object, slot-object, t

Generated for terminal symbol ’}’

Class: lambda-ast [sel/sw/ts]

Class precedence list: lambda-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are lambdas.

Class: literal-ast [sel/sw/ts]

Class precedence list: literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literals.

Class: loop-ast [sel/sw/ts]

Class precedence list: loop-ast, control-flow-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are loops.

Class: number-ast [sel/sw/ts]

Class precedence list: number-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literal numbers.

Class: parameters-ast [sel/sw/ts]

Class precedence list: parameters-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are parameter lists.

Class: parenthesized-expression-ast [sel/sw/ts]

Class precedence list: parenthesized-expression-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are parenthesized expressions.

Class: parse-error-ast [sel/sw/ts]

Class precedence list: parse-error-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that represent tree-sitter parsing errors.

Superclass of every generated LANGUAGE-error class.

Class: python [sel/sw/ts]

Class precedence list: python, tree-sitter, software-indentation, parseable, software, oid-object, file, standard-object, slot-object, t

python tree-sitter software representation.

Class: return-ast [sel/sw/ts]

Class precedence list: return-ast, statement-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are return statements.

Class: string-ast [sel/sw/ts]

Class precedence list: string-ast, literal-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are literal strings.

Class: typescript [sel/sw/ts]

Class precedence list: typescript, ecma, software, oid-object, standard-object, slot-object, t

Mix-in class for tree-sitter TypeScript variants.

Class: unary-ast [sel/sw/ts]

Class precedence list: unary-ast, expression-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are unary expressions.

Class: while-ast [sel/sw/ts]

Class precedence list: while-ast, control-flow-ast, conditional-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are whiles.

Variable: *tree-sitter-language-directories* [sel/sw/ts]

A list of directories that hold directories of json files defining supported tree-sitter languages. These directories are searched to populate ‘*tree-sitter-language-files*’.

Variable: *tree-sitter-language-files* [sel/sw/ts]

Files defining tree sitter languages.

Macro: ast-from-template [sel/sw/ts] template class &rest args

In one step, build and destructure a template into ASTs.

Must use the positional syntax of ‘ast-template’. Returns one value per metavariable, in numeric order (‘$1’, ‘$2’, etc.).

This is useful because not every kind of AST node can be parsed directly as a template. e.g. in Python a tuple, an argument list, and a parameter list all use the same syntax and can only be distinguished in context. Or (at the time of writing) the C and C++ parsers for tree-sitter cannot correctly parse unterminated statements. Using ‘ast-from-template’ lets you provide throwaway context to the parser while pulling out only the particular nodes that you want.

Function: ast-mixin-subclasses [sel/sw/ts] class language

Return a list of AST classes for language that inherit from class.

Function: ast-template [sel/sw/ts] template class &rest args

Create an AST of class from template usings args.

You probably don’t want to use this function directly; supported languages allow you to use a function with the same name as shorthand for creating a template:

    (python "$ID = 1" :id "x")
    ≡ (ast-template "$ID = 1" 'python-ast :id "x")

By default metavariables look like ‘$X’, where the name can contain only uppercase characters, digits, or underscores. (Syntax can vary by language; see ‘template-metavariable’.)

Metavariables can also look like ‘@ARGS’. In this case they stand for a list of ASTs, rather than a single AST.

    (ast-template "fn(@ARGS)" :args '(1 2 3))
    => <python-call "fn(1, 2, 3)">

There are two syntaxes for args.

args can be keyword arguments, defaults for the corresponding metavariables (converting dashes to underscores):

    (ast-template "$LEFT_HAND_SIDE = $RIGHT_HAND_SIDE" 'python-ast
                  :left-hand-side "x"
                  :right-hand-side 1)
    => <python-assignment "x = 1">

args can be positional (keywords not allowed!). In this case metavariables must be numbered (‘$1’, ‘$2’, etc.):

    (ast-template "$1 = $2" 'python-ast "x" 1)
    ≡ (ast-template "$1 = $2" 'python-ast :1 "x" :2 1)

    ;; Also works for list arguments.

    (ast-template "fn(@1)" '(1 2 3))
    => <python-call "fn(1, 2, 3)">

Values in args must be ASTs, literals, or lists. Lists are processed recursively (but only to one level). Atoms that are not ASTs or literals are converted into ASTs using ‘template-subtree’, a generic function. Atoms that are ASTs are copied into the resulting tree. Atoms that are literals (such as strings or integers) are inlined into the string and parsed in place. (This is necessary as the AST that corresponds to a string may only be parseable in context.)

    (ast-template "$1 = value" 'python-ast "x")
    ≡ (ast-template "$1 = value" 'python-ast
                    (convert "x" 'python-ast :deepest t))

Both keyword and positional syntaxes (as well as list metavariables with ‘@’) can also be used as Trivia patterns for destructuring.

    (match (python "x = 2 + 2")
      ((python "$1 = $2" var (python "$X + $Y" :x x :y y))
       (list x y)))
    => (#<python-identifier "x"> #<python-integer "2">
        #<python-integer "2">)
Function: bash [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Function: c-functions [sel/sw/ts] c-soft

Returns the list of c functions in the C software object. Each returned function is a cons of the form (<function-name> . <ast>) where <function-name> is a string, and <ast> is a c-function-definition.

Generic Function: call-arguments [sel/sw/ts] ast

Return the arguments of AST.

Method: call-arguments [sel/sw/ts] (python-call python-call)

automatically generated reader method

Method: call-arguments [sel/sw/ts] (cpp-call-expression cpp-call-expression)

automatically generated reader method

Method: call-arguments [sel/sw/ts] (c-call-expression c-call-expression)

automatically generated reader method

Function: collect-var-uses [sel/sw/ts] obj ast

Collect uses of AST in obj.

Function: cpp [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Generic Function: definition-name [sel/sw/ts] ast

Return a string that is the name of the things defined by a definition. Return nil if AST is not a definition.

Generic Function: find-enclosing [sel/sw/ts] type software ast

Return the nearest enclosing AST of type in software.

Function: find-if-in-scopes [sel/sw/ts] predicate scopes

Return the first binding in scopes that satisfies predicate.

Generic Function: function-parameters [sel/sw/ts] ast

Return the parameters of AST.

Class: json-null [sel/sw/ts]

Class precedence list: json-null, json-_-value, json-ast, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

Generated for null.

Function: get-asts-in-namespace [sel/sw/ts] obj ast

Get all of the ASTs in AST which are considered to be in the same namespace.

Function: golang [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Function: identical-name-p [sel/sw/ts] name1 name2

Return t if the IDs of NAME1 and NAME2 are the same.

Function: in-class-def-p [sel/sw/ts] obj ast

Return the class definition if AST is inside one.

Function: java [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Function: javascript [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Generic Function: lhs [sel/sw/ts] ast

Return the left-hand side of an AST.

Method: lhs [sel/sw/ts] (python-keyword-argument python-keyword-argument)

automatically generated reader method

Method: lhs [sel/sw/ts] (python-boolean-operator python-boolean-operator)

automatically generated reader method

Method: lhs [sel/sw/ts] (python-binary-operator python-binary-operator)

automatically generated reader method

Method: lhs [sel/sw/ts] (python-augmented-assignment python-augmented-assignment)

automatically generated reader method

Method: lhs [sel/sw/ts] (python-assignment python-assignment)

automatically generated reader method

Method: lhs [sel/sw/ts] (cpp-init-declarator cpp-init-declarator)

automatically generated reader method

Method: lhs [sel/sw/ts] (cpp-assignment-expression cpp-assignment-expression)

automatically generated reader method

Method: lhs [sel/sw/ts] (c-init-declarator c-init-declarator)

automatically generated reader method

Method: lhs [sel/sw/ts] (c-assignment-expression c-assignment-expression)

automatically generated reader method

Generic Function: no-fallthrough [sel/sw/ts] ast

Return t if AST will never fall through.

Generic Function: operator [sel/sw/ts] ast

Return the operator from an AST as a keyword.

Method: operator [sel/sw/ts] (python-unary-operator python-unary-operator)

automatically generated reader method

Method: operator [sel/sw/ts] (python-boolean-operator python-boolean-operator)

automatically generated reader method

Method: operator [sel/sw/ts] (python-binary-operator python-binary-operator)

automatically generated reader method

Generic Function: parameter-name [sel/sw/ts] parameter-ast

Return the name of parameter-ast.

Generic Function: patch-whitespace [sel/sw/ts] ast &key style recursive

Destructively patch whitespace on AST by adding a space to the before-text and after-text slots that need it.

Generic Function: provided-by [sel/sw/ts] software ast

Return the library, package, or system in software providing AST.

Function: python [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Generic Function: rhs [sel/sw/ts] ast

Return the right-hand side of an AST.

Method: rhs [sel/sw/ts] (python-keyword-argument python-keyword-argument)

automatically generated reader method

Method: rhs [sel/sw/ts] (python-boolean-operator python-boolean-operator)

automatically generated reader method

Method: rhs [sel/sw/ts] (python-binary-operator python-binary-operator)

automatically generated reader method

Method: rhs [sel/sw/ts] (python-augmented-assignment python-augmented-assignment)

automatically generated reader method

Method: rhs [sel/sw/ts] (python-assignment python-assignment)

automatically generated reader method

Method: rhs [sel/sw/ts] (cpp-init-declarator cpp-init-declarator)

automatically generated reader method

Method: rhs [sel/sw/ts] (cpp-assignment-expression cpp-assignment-expression)

automatically generated reader method

Method: rhs [sel/sw/ts] (c-init-declarator c-init-declarator)

automatically generated reader method

Method: rhs [sel/sw/ts] (c-assignment-expression c-assignment-expression)

automatically generated reader method

Class: source-text-fragment [sel/sw/ts]

Class precedence list: source-text-fragment, standard-object, slot-object, t

A mixin for ASTs that represent fragments of source text.

Class: statement-ast [sel/sw/ts]

Class precedence list: statement-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are statements.

Generic Function: template-placeholder [sel/sw/ts] ast name

Generate a placeholder for name.

The user should never see the placeholder; it is simply a string that AST’s language can parse as a valid identifier.

Generic so a different syntax can be used per-language.

Generic Function: template-subtree [sel/sw/ts] ast thing

Convert thing into a subtree.

Class: terminal-symbol [sel/sw/ts]

Class precedence list: terminal-symbol, standard-object, slot-object, t

Mix-in for terminal symbols. Note that this won’t fully cover every terminal symbol, only the ones that aren’t named.

Class: text-fragment [sel/sw/ts]

Class precedence list: text-fragment, tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

A wrapper class for text fragments in computed text ASTs.

Class: tree-sitter [sel/sw/ts]

Class precedence list: tree-sitter, software-indentation, parseable, software, oid-object, file, standard-object, slot-object, t

tree-sitter software representation.

Class: tree-sitter-ast [sel/sw/ts]

Class precedence list: tree-sitter-ast, indentation, structured-text, functional-tree-ast, node, identity-ordering-mixin, ast, stored-hash, standard-object, slot-object, t

AST for input from tree-sitter.

Function: c [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Generic Function: type-in [sel/sw/ts] software ast

Return the type of AST in software.

Class: variable-declaration-ast [sel/sw/ts]

Class precedence list: variable-declaration-ast, ast, standard-object, slot-object, t

Mix-in for AST classes that are variable declarations.

Function: json [sel/sw/ts] template &rest args

Short for (ast-template template python-ast args...).

Generic Function: parameter-type [sel/sw/ts] parameter-ast

Return a representation of the type of parameter-ast.

Method: parameter-type [sel/sw/ts] (ast c-parameter-declaration)

Return format is (base-type pointer-depth . qualifiers).

Generic Function: template-metavariable [sel/sw/ts] ast symbol

Generate the corresponding valid metavariable for symbol.

By default this substitutes underscores for dashes and prepends a sigil.

Generic so a different syntax can be used per-language.

Generic Function: variable-name [sel/sw/ts] variable-ast

Return the name of variable-ast.

Function: wildcard? [sel/sw/ts] node

Is node a wildcard (symbol that starts with WILD_)?


Next: , Previous: , Up: Software Evolution Library Index   [Contents][Index]