package diffast-langs-java

  1. Overview
  2. Docs
module Xset = Diffast_misc.Xset
module Xlist = Diffast_misc.Xlist
module Xhash = Diffast_misc.Xhash
module XML = Diffast_misc.XML
module Loc = Diffast_misc.Loc
module Astml = Diffast_core.Astml
module Spec = Diffast_core.Spec
module Lang_base = Diffast_core.Lang_base
module Charpool = Diffast_core.Charpool
module Ast = Java_parsing.Ast
module Printer = Java_parsing.Printer
type name = string
type identifier = string
type signature = string
val lang_prefix : string
val ident_attr_name : string
val label_attr_name : string
val dims_attr_name : string
val islocal_attr_name : string
val isstmt_attr_name : string
val keyroot_depth_min : int
type tie_id = Lang_base.tie_id
val null_tid : string * string
val mktid : 'a -> 'b -> 'a * 'b
val hash_of_tid : Lang_base.tie_id -> string
val tid_to_string : (string * string) -> string
val anonymize_tid : ?more:bool -> Lang_base.tie_id -> string * string
val mktidattr : Lang_base.tie_id -> (string * string) list
val mkstmttidattr : Lang_base.tie_id -> (string * string) list
val xmlenc : string -> string
val xmldec : string -> string
module type T = sig ... end
type dims = int
val vdid_to_string : (string * int) -> string
val vdids_to_string : (string * int) list -> string
val vdid_to_name : ('a * 'b) -> 'a
val vdids_to_name : (string * dims) list -> string
val conv_name : ?resolve:bool -> Ast.name -> Ast.identifier
val conv_loc : Ast.Loc.t -> Loc.t
module Type : sig ... end
module Literal : sig ... end
module AssignmentOperator : sig ... end
module UnaryOperator : sig ... end
module BinaryOperator : sig ... end
module Modifier : sig ... end
module Primary : sig ... end
module Expression : sig ... end
module Annotation : sig ... end
module Statement : sig ... end
type annotation = string option
val null_annotation : 'a option
val annotation_to_string : annotation -> string
val make_annotation : string -> annotation
type kind =
  1. | Kclass of name
  2. | Kinterface of name
  3. | Kenum of name
  4. | Krecord of name
  5. | Kannotation of name
  6. | Kfield of name
  7. | Kconstructor of name
  8. | Kmethod of name
  9. | Kparameter of name
  10. | Klocal of name
  11. | Kany
  12. | Kaspect of name
  13. | Kpointcut of name
val anonymize_kind : kind -> kind
val kind_to_anonymous_string : kind -> string
val kind_to_string : kind -> string
val kind_to_attrs : kind -> (string * string) list
val kind_to_name_attrs : kind -> (string * string) list
val kind_to_name : kind -> name
val kind_to_short_string : kind -> string
type t =
  1. | Type of Type.t
  2. | Primary of Primary.t
  3. | Expression of Expression.t
  4. | Statement of Statement.t
  5. | Modifier of Modifier.t
  6. | Annotation of Annotation.t
  7. | TypeBound
  8. | ThisInvocation
  9. | SuperInvocation
  10. | PrimaryInvocation
  11. | NameInvocation of name
  12. | SLconstant of tie_id
  13. | SLdefault
  14. | EVconditional
  15. | EVannotation
  16. | EVarrayInit
  17. | ElementValuePair of name
  18. | Constructor of name * signature
  19. | ConstructorBody of name * signature
  20. | StaticInitializer
  21. | InstanceInitializer
  22. | Block of tie_id
  23. | LocalVariableDeclaration of bool * (name * dims) list
  24. | VariableDeclarator of name * dims
  25. | CatchClause of tie_id
  26. | Finally
  27. | ForInit of tie_id
  28. | ForCond of tie_id
  29. | ForUpdate of tie_id
  30. | SwitchBlock
  31. | SwitchBlockStatementGroup
  32. | DimExpr
  33. | TypeArguments of int * name
  34. | Wildcard
  35. | WildcardBoundsExtends
  36. | WildcardBoundsSuper
  37. | Annotations
  38. | Arguments
  39. | NamedArguments of name
  40. | Parameters of name
  41. | Parameter of identifier * dims * bool
  42. | ReceiverParameter of identifier option
  43. | TypeParameter of name
  44. | TypeParameters of name
  45. | ArrayInitializer
  46. | Modifiers of kind
  47. | FieldDeclaration of (name * dims) list
  48. | VariableDeclaration
  49. | Method of name * signature
  50. | Super
  51. | Qualifier of name
  52. | Throws of name
  53. | MethodBody of name * signature
  54. | Specifier of kind
  55. | Class of name
  56. | Enum of name
  57. | EnumConstant of name
  58. | Record of name
  59. | Extends
  60. | Implements
  61. | Permits
  62. | ClassBody of name
  63. | EnumBody of name
  64. | Interface of name
  65. | AnnotationType of name
  66. | AnnotationTypeBody of name
  67. | ExtendsInterfaces
  68. | InterfaceBody of name
  69. | PackageDeclaration of name
  70. | Module of name
  71. | Open
  72. | ModuleName of name
  73. | ModuleBody of name
  74. | Requires of name
  75. | Exports of name
  76. | Opens of name
  77. | Uses of name
  78. | Provides of name
  79. | TypeName of name
  80. | IDsingle of name
  81. | IDtypeOnDemand of name
  82. | IDsingleStatic of name * name
  83. | IDstaticOnDemand of name
  84. | ImportDeclarations
  85. | TypeDeclarations
  86. | CompilationUnit
  87. | ElementDeclaration of name
  88. | FieldDeclarations of name
  89. | InferredFormalParameters
  90. | InferredFormalParameter of identifier
  91. | ResourceSpec
  92. | CatchParameter of name * dims
  93. | AnnotDim of bool
  94. | Error of string
  95. | HugeArray of int * string
  96. | HugeExpr of int * string
  97. | EmptyDeclaration
  98. | ForHead of tie_id
  99. | Aspect of name
  100. | Pointcut of name
  101. | DeclareParents
  102. | DeclareMessage of string
  103. | DeclareSoft
  104. | DeclarePrecedence
  105. | PointcutAnd
  106. | PointcutOr
  107. | PointcutNot
  108. | PointcutParen
  109. | PointcutWithin
  110. | ClassnamePatternAnd
  111. | ClassnamePatternOr
  112. | ClassnamePatternNot
  113. | ClassnamePatternParen
  114. | ClassnamePatternName of name
  115. | ClassnamePatternNamePlus of name
  116. | SwitchRule
  117. | SRLconstant
  118. | SRLdefault
val to_string : t -> string
val strip : t -> t
val anonymize : ?more:bool -> t -> t
val anonymize2 : t -> t
val anonymize3 : t -> t
val to_simple_string : t -> name
val to_short_string : ?ignore_identifiers_flag:bool -> t -> string
val sig_attr_name : string
val to_tag : ?strip:bool -> t -> string * (string * identifier) list
val to_char : t -> char
val to_elem_data : ?strip:bool -> ?afilt:(string -> bool) -> Astml.Loc.t -> t -> string * (string * string) list * string
val of_javatype : ?resolve:bool -> Ast.javatype -> t
val of_classname : ?resolve:bool -> Ast.name -> t
val of_literal : ?anonymize_int:bool -> ?anonymize_float:bool -> ?anonymize_string:bool -> ?reduce:bool -> Ast.literal -> t
val of_binary_operator : Ast.binary_operator -> t
val mkelab : ?tid:tie_id -> bool -> Expression.t -> t
val mkplab : ?tid:tie_id -> bool -> Primary.t -> t
val of_assignment_operator : ?is_stmt:bool -> Ast.assignment_operator -> tie_id -> t
val of_unary_operator : ?is_stmt:bool -> Ast.unary_operator -> t
val get_expr : t -> Expression.t
val is_hunk_boundary : t -> t -> bool
val forced_to_be_collapsible : 'a -> bool
val is_collapse_target : < no_collapse_flag : bool.. > -> t -> bool
val is_statement_expression : t -> bool
val is_compatible : ?weak:bool -> t -> t -> bool
val quasi_eq : t -> t -> bool
val relabel_allowed : (t * t) -> bool
val move_disallowed : t -> bool
val is_common : t -> bool
val is_order_insensitive : t -> bool
val is_named : t -> bool
val is_named_orig : t -> bool
val is_to_be_notified : t -> bool
val is_partition : t -> bool
val is_boundary : t -> bool
val is_sequence : t -> bool
val is_ntuple : t -> bool
val is_wildcard_bounds : t -> bool
val is_if : t -> bool
val is_elseif : t -> bool
val is_else : t -> bool
val is_while : t -> bool
val is_do : t -> bool
val is_try : t -> bool
val is_yield : t -> bool
val is_return : t -> bool
val is_method : t -> bool
val is_parameter : t -> bool
val is_va_parameter : t -> bool
val is_parameters : t -> bool
val is_typeparameter : t -> bool
val is_typeparameters : t -> bool
val is_typearguments : ?nth:int -> t -> bool
val is_statement : t -> bool
val is_statement_or_block : t -> bool
val is_field : t -> bool
val is_fieldaccess : t -> bool
val is_import_single : t -> bool
val is_type : t -> bool
val is_module : t -> bool
val is_module_body : t -> bool
val is_open : t -> bool
val is_module_directive : t -> bool
val is_class : t -> bool
val is_implements : t -> bool
val is_permits : t -> bool
val is_classbody : t -> bool
val is_classbodydecl : t -> bool
val is_emptydecl : t -> bool
val is_enumbody : t -> bool
val is_interface : t -> bool
val is_interfacebody : t -> bool
val is_annotationtype : t -> bool
val is_annotationtypebody : t -> bool
val is_annotations : t -> bool
val is_annotation : t -> bool
val is_class_or_interface : t -> bool
val is_enum : t -> bool
val is_enumconstant : t -> bool
val is_record : t -> bool
val is_typedeclaration : t -> bool
val is_modifier : t -> bool
val is_final : t -> bool
val is_public : t -> bool
val is_private : t -> bool
val is_protected : t -> bool
val is_modifiers : t -> bool
val is_methodbody : t -> bool
val is_ctorbody : t -> bool
val is_extends : t -> bool
val is_extendsinterfaces : t -> bool
val is_localvariabledecl : t -> bool
val is_assert : t -> bool
val is_for : t -> bool
val is_forinit : t -> bool
val is_forcond : t -> bool
val is_forupdate : t -> bool
val is_forhead : t -> bool
val is_switchblock : t -> bool
val is_switchblockstmtgroup : t -> bool
val is_switchrule : t -> bool
val is_switchlabel : t -> bool
val is_switchrulelabel : t -> bool
val is_arrayinitializer : t -> bool
val is_variabledeclarator : t -> bool
val is_literal : t -> bool
val is_string_literal : t -> bool
val is_text_block : t -> bool
val is_int_literal : t -> bool
val is_real_literal : t -> bool
val is_name : t -> bool
val is_ambiguous_name : t -> bool
val is_ambiguous_method_invocation : t -> bool
val is_instancecreation : t -> bool
val is_assignment : t -> bool
val is_qualifier : t -> bool
val is_arguments : t -> bool
val is_arraycreation : t -> bool
val is_importdeclarations : t -> bool
val is_throws : t -> bool
val is_expression : t -> bool
val is_op : t -> bool
val is_methodinvocation : t -> bool
val is_ctorinvocation : t -> bool
val is_invocation : t -> bool
val is_simple_invocation : t -> bool
val is_instance_creation : t -> bool
val is_invocation_or_instance_creation : t -> bool
val is_specifier : t -> bool
val is_primary : t -> bool
val is_primarythis : t -> bool
val is_primaryname : t -> bool
val is_unaryop : t -> bool
val is_binaryop : t -> bool
val is_binary_add : t -> bool
val is_block : t -> bool
val get_ident_use : t -> name
val is_explicitctorinvok : t -> bool
val is_blockstatement : t -> bool
val is_elementvalue : t -> bool
val is_ctor : t -> bool
val is_staticinit : t -> bool
val is_instanceinit : t -> bool
val is_packagedeclaration : t -> bool
val is_compilationunit : t -> bool
val is_type_bound : t -> bool
val is_catch_clause : t -> bool
val is_finally : t -> bool
val is_resource_spec : t -> bool
val is_catch_parameter : t -> bool
val is_annot_dim : t -> bool
val is_aspect : t -> bool
val is_pointcut : t -> bool
val is_declare : t -> bool
val is_pointcut_expr : t -> bool
val is_classname_pattern_expr : t -> bool
val is_scope_creating : t -> bool
val get_category : t -> string
val get_dims : t -> dims
val get_name : ?strip:bool -> t -> name
val get_value : t -> string
val has_value : t -> bool
val has_non_trivial_value : t -> bool
val has_non_trivial_tid : t -> bool
val get_signature : t -> signature
val getlab : < data : < _label : Obj.t.. >.. > -> t
val get_dimensions : t -> dims
val cannot_be_keyroot : < data : < _label : Obj.t.. >.. > -> bool
val is_phantom : t -> bool
val is_special : 'a -> bool
val is_error : t -> bool
val find_name : (string * string) list -> string
val find_code : (string * string) list -> string
val find_kind : (string * string) list -> kind
val of_elem_data : string -> (string * identifier) list -> string -> t
OCaml

Innovation. Community. Security.