package comby-kernel
A match engine for structural code search and replace that supports ~every language
Install
Dune Dependency
Authors
Maintainers
Sources
1.4.1.tar.gz
md5=cd732f90664bc686eaa1134f42c8f7cd
sha512=81c7cd1d70cddee4d1679710a95c50d22f8dc60e48f24554009a5f944eb23e9124ca9aa99357b9879a5a60ca2dbcf976011f53afb442a7f15642e509255a0326
doc/src/comby-kernel.language/omega_parser.ml.html
Source file omega_parser.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
open Core_kernel open Angstrom open Ast let (|>>) p f = p >>= fun x -> return (f x) let alphanum = satisfy (function | 'a' .. 'z' | 'A' .. 'Z' | '0' .. '9' -> true | _ -> false) let variable_parser = (string Syntax.variable_left_delimiter *> (many (alphanum <|> char '_') |>> String.of_char_list) <* string Syntax.variable_right_delimiter) let escaped_char_s = any_char let char_token_s = (char '\\' *> escaped_char_s >>= fun c -> return (Format.sprintf {|\%c|} c)) <|> (any_char |>> String.of_char) let value_parser = (string {|"|} *> (many_till char_token_s (string {|"|}))) |>> String.concat let operator_parser = choice [ string Syntax.equal ; string Syntax.not_equal ] let atom_parser = choice [ (variable_parser >>= fun variable -> return (Variable variable)) ; (value_parser >>= fun value -> return (String value)) ] let rewrite_template_parser = value_parser >>= fun value -> return (RewriteTemplate value)
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>