package bap-std

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

AST transformation. mapper allows one to map AST, performing some limited amount of transformations on it. Mapper provides extra flexibility by mapping stmt to stmt list, thus allowing to remove statements from the output (by mapping to empty list) or to map one statement to several. This is particularly useful when you map if or while statements.

inherit Exp.mapper
inherit state
method run : t list -> t list

Default entry point. But again, you can use any method as an entry

method map_stmt : t -> t list
method map_move : var -> exp -> t list
method map_jmp : exp -> t list
method map_while : cond:exp -> t list -> t list
method map_if : cond:exp -> yes:t list -> no:t list -> t list
method map_cpuexn : int -> t list
method map_special : string -> t list