package pfff
Tools and APIs for program analysis, code visualization, refactoring
Install
Dune Dependency
Authors
Maintainers
Sources
0.39.1.tar.gz
md5=19e3eb1003161d8e7ed65c96c4f69d52
sha512=37834e1726a004272fbc153fc4cd0a6afdf02b7918acf27492acd60890c32591eb8f5b22fcfd99dd707d8507b8208bdb24c99de9fd940cc2ad0171f1d103743f
doc/pfff-h_program-lang/Ast_generic/index.html
Module Ast_generic
type tok = Parse_info.info
type 'a wrap = 'a * tok
type name = string wrap
type dotted_name = name list
type qualified_name = dotted_name
type resolved_name =
| Local
| Param
| Global of qualified_name
| NotResolved
| Macro
| EnumConstant
| ImportedModule
type expr =
| L of literal
| Container of container_operator * expr list
| Tuple of expr list
| Record of field list
| Constructor of name * expr list
| Lambda of parameters * stmt
| Nop
| Id of name * id_info
| IdSpecial of special
| Call of expr * arguments
| Assign of expr * expr
| AssignOp of expr * arithmetic_operator * expr
| LetPattern of pattern * expr
| ObjAccess of expr * name
| ArrayAccess of expr * expr
| Conditional of expr * expr * expr
| MatchPattern of expr * action list
| Yield of expr
| Await of expr
| Cast of type_ * expr
| Seq of expr list
| Ref of expr
| DeRef of expr
| Ellipses of tok
| OtherExpr of other_expr_operator * any list
and id_info = {
id_qualifier : dotted_name option;
id_typeargs : type_arguments option;
id_resolved : resolved_name ref;
id_type : type_ option ref;
}
and special =
| This
| Super
| Self
| Parent
| Eval
| Typeof
| Instanceof
| Sizeof
| New
| Concat
| Spread
| ArithOp of arithmetic_operator
| IncrDecr of incr_decr * prefix_postfix
and arguments = argument list
and other_expr_operator =
| OE_Exports
| OE_Module
| OE_Define
| OE_Arguments
| OE_NewTarget
| OE_Delete
| OE_YieldStar
| OE_Encaps
| OE_Require
| OE_UseStrict
| OE_ObjAccess_PN_Computed
| OE_ExprClass
| OE_Imag
| OE_Is
| OE_IsNot
| OE_In
| OE_NotIn
| OE_Invert
| OE_Slice
| OE_SliceIndex
| OE_SliceRange
| OE_CompForIf
| OE_CompFor
| OE_CompIf
| OE_CmpOps
| OE_Repr
| OE_NameOrClassType
| OE_ClassLiteral
| OE_GetRefLabel
| OE_ArrayInitDesignator
| OE_GccConstructor
| OE_Unpack
and type_arguments = type_argument list
and attribute =
| Static
| Volatile
| Extern
| Public
| Private
| Protected
| Abstract
| Final
| Var
| Let
| Const
| Generator
| Async
| Ctor
| Dtor
| Getter
| Setter
| Variadic
| NamedAttr of name * any list
| OtherAttribute of other_attribute_operator * any list
and stmt =
| ExprStmt of expr
| LocalDef of definition
| LocalDirective of directive
| Block of stmt list
| If of expr * stmt * stmt
| While of expr * stmt
| DoWhile of stmt * expr
| For of for_header * stmt
| Switch of expr * case_and_body list
| Return of expr
| Continue of expr option
| Break of expr option
| Label of label * stmt
| Goto of label
| Throw of expr
| Try of stmt * catch list * finally option
| Assert of expr * expr option
| OtherStmt of other_stmt_operator * any list
and finally = stmt
and label = name
and definition = entity * definition_kind
and entity = {
name : name;
attrs : attribute list;
type_ : type_ option;
tparams : type_parameter list;
}
and definition_kind =
| FuncDef of function_definition
| VarDef of variable_definition
| ClassDef of class_definition
| TypeDef of type_definition
and type_parameter = name * type_parameter_constraints
and type_parameter_constraints = type_parameter_constraint list
and parameters = parameter list
and parameter =
| ParamClassic of parameter_classic
| ParamPattern of pattern
| OtherParam of other_parameter_operator * any list
and field =
| FieldVar of entity * variable_definition
| FieldMethod of entity * function_definition
| FieldDynamic of expr * attribute list * expr
| FieldSpread of expr
| FieldStmt of stmt
and type_definition =
| OrType of or_type_element list
| AndType of field list
| AliasType of type_
| OtherTypeKind of other_type_kind_operator * any list
and class_definition = {
ckind : class_kind;
cextends : type_ list;
cimplements : type_ list;
cbody : field list;
}
and directive =
| Import of module_name * alias list
| ImportAll of module_name * name option
| OtherDirective of other_directive_operator * any list
and program = item list
and any =
| N of name
| En of entity
| E of expr
| S of stmt
| T of type_
| P of pattern
| D of definition
| Di of directive
| I of item
| Pa of parameter
| Ar of argument
| At of attribute
| Dk of definition_kind
| Dn of dotted_name
| Pr of program
val empty_info : unit -> id_info
val basic_param : name -> parameter_classic
val empty_var : unit -> variable_definition
val entity_to_param : entity -> parameter_classic
val opt_to_name : (string * Parse_info.info) option -> string * Parse_info.info
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>