[libgit2-glib] Pass GgitDiffSimilarityMetric to GgitMergeTreeOptions
- From: Ignacio Casal Quinteiro <icq src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgit2-glib] Pass GgitDiffSimilarityMetric to GgitMergeTreeOptions
- Date: Sat, 6 Jul 2013 15:17:38 +0000 (UTC)
commit 0cb1b2a69d0dd3cefc6f60453ca5b064a8c5d862
Author: Ignacio Casal Quinteiro <icq gnome org>
Date: Sat Jul 6 14:33:24 2013 +0200
Pass GgitDiffSimilarityMetric to GgitMergeTreeOptions
libgit2-glib/ggit-diff-similarity-metric.c | 4 ++--
libgit2-glib/ggit-diff-similarity-metric.h | 2 +-
libgit2-glib/ggit-merge-tree-options.c | 14 ++++++++------
libgit2-glib/ggit-merge-tree-options.h | 9 +++++----
4 files changed, 16 insertions(+), 13 deletions(-)
---
diff --git a/libgit2-glib/ggit-diff-similarity-metric.c b/libgit2-glib/ggit-diff-similarity-metric.c
index 975b6a5..cf454c5 100644
--- a/libgit2-glib/ggit-diff-similarity-metric.c
+++ b/libgit2-glib/ggit-diff-similarity-metric.c
@@ -36,7 +36,7 @@ struct _GgitDiffSimilarityMetric
G_DEFINE_BOXED_TYPE (GgitDiffSimilarityMetric, ggit_diff_similarity_metric,
ggit_diff_similarity_metric_copy, ggit_diff_similarity_metric_free)
-const git_diff_similarity_metric *
+git_diff_similarity_metric *
_ggit_diff_similarity_metric_get_similarity_metric (GgitDiffSimilarityMetric *metric)
{
if (metric == NULL)
@@ -44,7 +44,7 @@ _ggit_diff_similarity_metric_get_similarity_metric (GgitDiffSimilarityMetric *me
return NULL;
}
- return (const git_diff_similarity_metric *)&metric->metric;
+ return &metric->metric;
}
/**
diff --git a/libgit2-glib/ggit-diff-similarity-metric.h b/libgit2-glib/ggit-diff-similarity-metric.h
index 1a11977..28fa2f0 100644
--- a/libgit2-glib/ggit-diff-similarity-metric.h
+++ b/libgit2-glib/ggit-diff-similarity-metric.h
@@ -34,7 +34,7 @@ G_BEGIN_DECLS
GType ggit_diff_similarity_metric_get_type (void) G_GNUC_CONST;
-const git_diff_similarity_metric *
+git_diff_similarity_metric *
_ggit_diff_similarity_metric_get_similarity_metric (GgitDiffSimilarityMetric
*metric);
GgitDiffSimilarityMetric *ggit_diff_similarity_metric_copy (GgitDiffSimilarityMetric
*metric);
diff --git a/libgit2-glib/ggit-merge-tree-options.c b/libgit2-glib/ggit-merge-tree-options.c
index 255b141..fd036f6 100644
--- a/libgit2-glib/ggit-merge-tree-options.c
+++ b/libgit2-glib/ggit-merge-tree-options.c
@@ -19,6 +19,7 @@
*/
#include "ggit-merge-tree-options.h"
+#include "ggit-diff-similarity-metric.h"
struct _GgitMergeTreeOptions
{
@@ -78,14 +79,13 @@ ggit_merge_tree_options_free (GgitMergeTreeOptions *merge_options)
g_slice_free (GgitMergeTreeOptions, merge_options);
}
-/* FIXME: MISSING git_diff_similarity_metric bind */
-
/**
* ggit_merge_tree_options_new:
* @flags: flags to consider when merging.
* @rename_threshold: similarity to consider a file renamed (default 50).
* @target_limit: maximum similarity sources to examine
* (overrides the `merge_tree.renameLimit` config) (default 200).
+ * @metric: (allow-none): a #GgitDiffSimilarityMetric or %NULL to use internal metric.
* @automerge_mode: mode for automerging.
*
* Creates a new #GgitMergeTreeOptions.
@@ -93,10 +93,11 @@ ggit_merge_tree_options_free (GgitMergeTreeOptions *merge_options)
* Returns: a newly allocated #GgitMergeTreeOptions.
*/
GgitMergeTreeOptions *
-ggit_merge_tree_options_new (GgitMergeTreeFlags flags,
- guint rename_threshold,
- guint target_limit,
- GgitMergeAutomergeMode automerge_mode)
+ggit_merge_tree_options_new (GgitMergeTreeFlags flags,
+ guint rename_threshold,
+ guint target_limit,
+ GgitDiffSimilarityMetric *metric,
+ GgitMergeAutomergeMode automerge_mode)
{
GgitMergeTreeOptions *merge_options;
git_merge_tree_opts gmerge_options = GIT_MERGE_TREE_OPTS_INIT;
@@ -106,6 +107,7 @@ ggit_merge_tree_options_new (GgitMergeTreeFlags flags,
gmerge_options.flags = flags;
gmerge_options.rename_threshold = rename_threshold;
gmerge_options.target_limit = target_limit;
+ gmerge_options.metric = _ggit_diff_similarity_metric_get_similarity_metric (metric);
gmerge_options.automerge_flags = automerge_mode;
merge_options->merge_options = gmerge_options;
diff --git a/libgit2-glib/ggit-merge-tree-options.h b/libgit2-glib/ggit-merge-tree-options.h
index 128131a..40ce9d0 100644
--- a/libgit2-glib/ggit-merge-tree-options.h
+++ b/libgit2-glib/ggit-merge-tree-options.h
@@ -40,10 +40,11 @@ const git_merge_tree_opts *
GgitMergeTreeOptions *ggit_merge_tree_options_copy (GgitMergeTreeOptions
*merge_options);
void ggit_merge_tree_options_free (GgitMergeTreeOptions
*merge_options);
-GgitMergeTreeOptions *ggit_merge_tree_options_new (GgitMergeTreeFlags flags,
- guint
rename_threshold,
- guint target_limit,
- GgitMergeAutomergeMode
automerge_mode);
+GgitMergeTreeOptions *ggit_merge_tree_options_new (GgitMergeTreeFlags flags,
+ guint
rename_threshold,
+ guint
target_limit,
+ GgitDiffSimilarityMetric *metric,
+ GgitMergeAutomergeMode
automerge_mode);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]