Line | |
---|

1 | |
---|

2 | (** This module provides folding functions over the constructors of the |
---|

3 | [Clight]'s AST. *) |
---|

4 | |
---|

5 | val ctype_fill_subs : Clight.ctype -> Clight.ctype list -> Clight.ctype |
---|

6 | |
---|

7 | val ctype : (Clight.ctype -> 'a list -> 'a) -> Clight.ctype -> 'a |
---|

8 | |
---|

9 | val expr : (Clight.expr_descr -> 'a list -> 'b list -> 'c) -> |
---|

10 | (Clight.ctype -> 'a list -> 'a) -> |
---|

11 | (Clight.expr -> 'c list -> 'a list -> 'b) -> |
---|

12 | Clight.expr -> |
---|

13 | 'b |
---|

14 | |
---|

15 | val expr_descr : (Clight.ctype -> 'a list -> 'a) -> |
---|

16 | (Clight.expr -> 'b list -> 'a list -> 'c) -> |
---|

17 | (Clight.expr_descr -> 'a list -> 'c list -> 'b) -> |
---|

18 | Clight.expr_descr -> |
---|

19 | 'b |
---|

20 | |
---|

21 | (* |
---|

22 | (* In [statement_left f_expr f_stmt stmt], [f_stmt]'s second argument is the |
---|

23 | list of [expression_left f_expr]'s results on [stmt]'s sub-expressions, and |
---|

24 | [f_stmt]'s third argument is the list of [statement_left]'s results |
---|

25 | on [stmt]'s sub-statements. The results are computed from left to right |
---|

26 | following their appearance order in the [Cminor.statement] type. *) |
---|

27 | |
---|

28 | val statement_left : (Cminor.expression -> 'a list -> 'a) -> |
---|

29 | (Cminor.statement -> 'a list -> 'b list -> 'b) -> |
---|

30 | Cminor.statement -> |
---|

31 | 'b |
---|

32 | *) |
---|

**Note:** See

TracBrowser
for help on using the repository browser.