libabigail
Namespaces | Functions
abg-diff-utils.cc File Reference

This file defines the declarations found in abg-diff-utils.h. More...

#include <cstring>
#include "abg-fwd.h"
#include "abg-internal.h"
#include "abg-diff-utils.h"
Include dependency graph for abg-diff-utils.cc:

Go to the source code of this file.

Namespaces

 abigail
 Toplevel namespace for libabigail.
 
 abigail::diff_utils
 Libabigail's core diffing algorithms.
 

Functions

void compute_lcs (const char *str1, const char *str2, int &ses_len, string &lcs)
 Compute the longest common subsequence of two strings and return the length of the shortest edit script for transforming the first string into the second. More...
 
bool compute_middle_snake (const char *str1, const char *str2, snake &s, int &ses_len)
 Returns the middle snake of two strings, as well as the length of their shortest editing script. More...
 
void compute_ses (const char *str1, const char *str2, edit_script &ses)
 Compute the shortest edit script for transforming a string into another. More...
 
bool ends_of_furthest_d_paths_overlap (const point &forward_d_path_end, const point &reverse_d_path_end)
 
bool point_is_valid_in_graph (point &p, unsigned a_size, unsigned b_size)
 
int ses_len (const char *str1, const char *str2, bool reverse)
 Compute the length of the shortest edit script for two strings. This is done using the "Greedy LCS/SES" of figure 2 in the paper. It can walk the edit graph either foward (when reverse is false) or backward starting from the end (when reverse is true). More...
 
bool snake_end_points (const snake &s, point &x, point &u)
 Get the end points of the snake, as intended by the paper. More...
 

Detailed Description

This file defines the declarations found in abg-diff-utils.h.

Definition in file abg-diff-utils.cc.