Build_path_prefix_mapRewrite paths for reproducible builds
Warning: this module is unstable and part of compiler-libs.
val encode_prefix : path_prefix -> stringval decode_prefix : string -> (path_prefix, error_message) resultval encode_pair : pair -> stringval decode_pair : string -> (pair, error_message) resulttype map = pair option listval encode_map : map -> stringval decode_map : string -> (map, error_message) resultrewrite_first map path tries to find a source in map that is a prefix of the input path. If it succeeds, it replaces this prefix with the corresponding target. If it fails, it just returns None.
rewrite_all map path finds all sources in map that are a prefix of the input path. For each matching source, in priority order, it replaces this prefix with the corresponding target and adds the result to the returned list. If there are no matches, it just returns [].
rewrite path uses rewrite_first to try to find a mapping for path. If found, it returns that, otherwise it just returns path.
invert_all map path finds all targets in map that are a prefix of the input path. For each matching target, in priority order, it replaces this prefix with the corresponding source and adds the result to the returned list. If there are no matches, it just returns [].