haracters as a single space. */ svn_diff_file_ignore_space_change, /** Ignore all whitespace characters. */ svn_diff_file_ignore_space_all } svn_diff_file_ignore_space_t; /** Options to control the behaviour of the file diff routines. * * @since New in 1.4. * * @note This structure may be extended in the future, so to preserve binary * compatibility, users must not allocate structs of this type themselves. * @see svn_diff_file_options_create(). * * @note Although its name suggests otherwise, this structure is used to * pass options to file as well as in-memory diff functions. */ typedef struct svn_diff_file_options_t { /** To what extent whitespace should be ignored when comparing lines. * The default is @c svn_diff_file_ignore_space_none. */ svn_diff_file_ignore_space_t ignore_space; /** Whether to treat all end-of-line markers the same when comparing lines. * The default is @c FALSE. */ svn_boolean_t ignore_eol_style; /** Whether the "@@" lines of the unified diff output should include a prefix * of the nearest preceding line that starts with a character that might be * the initial character of a C language identifier. The default is * @c FALSE. * @since New in 1.5. */ svn_boolean_t show_c_function; /** The number of context lines produced above and below modifications, if * available. The number of context lines must be >= 0. * * @since New in 1.9 */ int context_size; } svn_diff_file_options_t; /** Allocate a @c svn_diff_file_options_t structure in @a pool, initializing * it with default values. * * @since New in 1.4. */ svn_diff_file_options_t * svn_diff_file_options_create(apr_pool_t *pool); /** * Parse @a args, an array of const char * command line switches * and adjust @a options accordingly. @a options is assumed to be initialized * with default values. @a pool is used for temporary allocation. * * @since New in 1.4. * * The following options are supported: * - --ignore-space-change, -b * - --ignore-all-space, -w * - --ignore-eol-style * - --show-c-function, -p @since New in 1.5. * - --context, -U ARG @since New in 1.9. * - --unified, -u (for compatibility, does nothing). */ svn_error_t * svn_diff_file_options_parse(svn_diff_file_options_t *options, const apr_array_header_t *args, apr_pool_t *pool);