[glom] lambdas: Capture by reference.
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glom] lambdas: Capture by reference.
- Date: Sun, 23 Aug 2015 22:12:23 +0000 (UTC)
commit 642022aa5d2766d4ce002ea4fe7747db4b98078d
Author: Murray Cumming <murrayc murrayc com>
Date: Mon Aug 24 00:11:28 2015 +0200
lambdas: Capture by reference.
In these cases, the lifetimes of the captured variables are appropriate.
glom/base_db.cc | 2 +-
glom/import_csv/file_encodings.cc | 2 +-
glom/libglom/data_structure/field.h | 2 +-
.../data_structure/layout/layoutitem_field.h | 2 +-
glom/libglom/document/document.cc | 4 ++--
glom/libglom/utils.cc | 2 +-
tests/test_document_load.cc | 2 +-
tests/test_document_load_and_change.cc | 2 +-
tests/test_document_load_translations.cc | 2 +-
9 files changed, 10 insertions(+), 10 deletions(-)
---
diff --git a/glom/base_db.cc b/glom/base_db.cc
index a2b023c..d48b208 100644
--- a/glom/base_db.cc
+++ b/glom/base_db.cc
@@ -64,7 +64,7 @@ template
auto find_if_layout_item_is_equal(T_Container& container, const typename T_Container::value_type&
layout_item) -> decltype(container.begin())
{
return std::find_if(container.begin(), container.end(),
- [layout_item](const typename T_Container::value_type& element)
+ [&layout_item](const typename T_Container::value_type& element)
{
//Assume that element is a shared_ptr<>.
diff --git a/glom/import_csv/file_encodings.cc b/glom/import_csv/file_encodings.cc
index d079f93..6c8ca5d 100644
--- a/glom/import_csv/file_encodings.cc
+++ b/glom/import_csv/file_encodings.cc
@@ -110,7 +110,7 @@ Glib::ustring get_name_of_charset(const Glib::ustring& charset)
type_list_encodings::const_iterator iter =
std::find_if(list_encodings.begin(), list_encodings.end(),
- [charset](const Encoding& encoding) {
+ [&charset] (const Encoding& encoding) {
return encoding.get_charset() == charset;
}
);
diff --git a/glom/libglom/data_structure/field.h b/glom/libglom/data_structure/field.h
index 7316898..d966ff5 100644
--- a/glom/libglom/data_structure/field.h
+++ b/glom/libglom/data_structure/field.h
@@ -40,7 +40,7 @@ template
auto find_if_same_name(T_Container& container, const Glib::ustring& name) -> decltype(container.begin())
{
return std::find_if(container.begin(), container.end(),
- [name](const typename T_Container::value_type& element)
+ [&name](const typename T_Container::value_type& element)
{
//Assume that element is a shared_ptr<>.
return element->get_name() == name;
diff --git a/glom/libglom/data_structure/layout/layoutitem_field.h
b/glom/libglom/data_structure/layout/layoutitem_field.h
index 777c535..82651d2 100644
--- a/glom/libglom/data_structure/layout/layoutitem_field.h
+++ b/glom/libglom/data_structure/layout/layoutitem_field.h
@@ -169,7 +169,7 @@ template
auto find_if_layout_item_field_is_same_field(T_Container& container, const std::shared_ptr<const
LayoutItem_Field>& layout_item) -> decltype(container.begin())
{
return std::find_if(container.begin(), container.end(),
- [layout_item](const typename T_Container::value_type& element)
+ [&layout_item](const typename T_Container::value_type& element)
{
//Assume that element is a shared_ptr<>.
diff --git a/glom/libglom/document/document.cc b/glom/libglom/document/document.cc
index 78d651a..deeee07 100644
--- a/glom/libglom/document/document.cc
+++ b/glom/libglom/document/document.cc
@@ -258,7 +258,7 @@ template
auto find_if_layout(T_Container& container, const Glib::ustring& layout_name, const Glib::ustring&
layout_platform) -> decltype(container.begin())
{
return std::find_if(container.begin(), container.end(),
- [layout_name, layout_platform](const typename T_Container::value_type& element)
+ [&layout_name, &layout_platform](const typename T_Container::value_type& element)
{
return (element.m_layout_name == layout_name) &&
(element.m_layout_platform == layout_platform);
@@ -4307,7 +4307,7 @@ template
auto find_if_item_and_hint_equal(T_Container& container, const Document::pair_translatable_item_and_hint&
item_and_hint) -> decltype(container.begin())
{
return std::find_if(container.begin(), container.end(),
- [item_and_hint](const typename T_Container::value_type& element)
+ [&item_and_hint](const typename T_Container::value_type& element)
{
if(!element.first && item_and_hint.first)
return true;
diff --git a/glom/libglom/utils.cc b/glom/libglom/utils.cc
index 7b74ede..ef92350 100644
--- a/glom/libglom/utils.cc
+++ b/glom/libglom/utils.cc
@@ -63,7 +63,7 @@ auto find_if_uses_relationship_has_relationship(T_Container& container, const st
related_relationship_name = Glib::ustring();
return std::find_if(container.begin(), container.end(),
- [relationship_name, related_relationship_name](const typename T_Container::value_type& element)
+ [&relationship_name, &related_relationship_name](const typename T_Container::value_type& element)
{
//Assume that element is a shared_ptr<>.
diff --git a/tests/test_document_load.cc b/tests/test_document_load.cc
index fd4287f..b01390f 100644
--- a/tests/test_document_load.cc
+++ b/tests/test_document_load.cc
@@ -61,7 +61,7 @@ static bool get_group_named(const Glom::Document::type_list_groups& container, c
{
Glom::Document::type_list_groups::const_iterator iter =
std::find_if(container.begin(), container.end(),
- [name] (const Glom::GroupInfo& info)
+ [&name] (const Glom::GroupInfo& info)
{
return info.get_name() == name;
}
diff --git a/tests/test_document_load_and_change.cc b/tests/test_document_load_and_change.cc
index 48504a8..303613a 100644
--- a/tests/test_document_load_and_change.cc
+++ b/tests/test_document_load_and_change.cc
@@ -49,7 +49,7 @@ static bool groups_contain_named(const Glom::Document::type_list_groups& contain
{
Glom::Document::type_list_groups::const_iterator iter =
std::find_if(container.begin(), container.end(),
- [name] (const Glom::GroupInfo& info)
+ [&name] (const Glom::GroupInfo& info)
{
return info.get_name() == name;
}
diff --git a/tests/test_document_load_translations.cc b/tests/test_document_load_translations.cc
index a1ae6a2..7187915 100644
--- a/tests/test_document_load_translations.cc
+++ b/tests/test_document_load_translations.cc
@@ -46,7 +46,7 @@ typename T_Container::value_type get_titled(const T_Container& container, const
typename T_Container::const_iterator iter =
std::find_if(container.begin(), container.end(),
- [title] (const typename T_Container::value_type& element)
+ [&title] (const typename T_Container::value_type& element)
{
return (element && element->get_title_original() == title);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]