jaehyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=76631f502a8234c04ed8124bfdebe62ed5bdf954

commit 76631f502a8234c04ed8124bfdebe62ed5bdf954
Author: Jaehyun Cho <jae_hyun....@samsung.com>
Date:   Wed Jan 15 18:45:38 2020 +0900

    efl_mono: remove class ExtensionTag
    
    Summary:
    Since class BindablePart and class BindableProperty use generic type
    constraint as "where T : <class name>", class ExtensionTag is no longer
    needed.
    
    Reviewers: SanghyeonLee, felipealmeida, YOhoho
    
    Reviewed By: YOhoho
    
    Subscribers: cedric, #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D11101
---
 src/bin/eolian_mono/eolian/mono/function_definition.hh | 10 ++++------
 src/bin/eolian_mono/eolian/mono/part_definition.hh     |  5 ++---
 src/bindings/mono/efl_mono/Bind.cs                     | 14 --------------
 3 files changed, 6 insertions(+), 23 deletions(-)

diff --git a/src/bin/eolian_mono/eolian/mono/function_definition.hh 
b/src/bin/eolian_mono/eolian/mono/function_definition.hh
index df6f62a2fb..0c2adebe42 100644
--- a/src/bin/eolian_mono/eolian/mono/function_definition.hh
+++ b/src/bin/eolian_mono/eolian/mono/function_definition.hh
@@ -285,9 +285,8 @@ struct property_extension_method_definition_generator
       if (property.setter.is_engaged())
         {
           attributes::type_def prop_type = property.setter->parameters[0].type;
-          if (!as_generator(scope_tab(2) << "public static 
Efl.BindableProperty<" << type(true) << "> " << managed_name << "<T>(this 
Efl.Ui.ItemFactory<T> fac, Efl.Csharp.ExtensionTag<"
-                            << 
name_helpers::klass_full_concrete_or_interface_name(cls)
-                            << ", T>magic = null) where T : " << 
name_helpers::klass_full_concrete_or_interface_name(cls) <<  " {\n"
+          if (!as_generator(scope_tab(2) << "public static 
Efl.BindableProperty<" << type(true) << "> " << managed_name << "<T>(this 
Efl.Ui.ItemFactory<T> fac) where T : "
+                            << 
name_helpers::klass_full_concrete_or_interface_name(cls) <<  " {\n"
                             << scope_tab(2) << scope_tab << "return new 
Efl.BindableProperty<" << type(true) << ">(\"" << property.name << "\", fac);\n"
                             << scope_tab(2) << "}\n\n"
                             ).generate(sink, std::make_tuple(prop_type, 
prop_type), context))
@@ -302,9 +301,8 @@ struct property_extension_method_definition_generator
       if (property.setter.is_engaged())
         {
           attributes::type_def prop_type = property.setter->parameters[0].type;
-          if (!as_generator(scope_tab(2) << "public static 
Efl.BindableProperty<" << type(true) << "> " << managed_name << "<T>(this 
Efl.BindablePart<T> part, Efl.Csharp.ExtensionTag<"
-                            << 
name_helpers::klass_full_concrete_or_interface_name(cls)
-                            << ", T>magic = null) where T : " << 
name_helpers::klass_full_concrete_or_interface_name(cls) <<  " {\n"
+          if (!as_generator(scope_tab(2) << "public static 
Efl.BindableProperty<" << type(true) << "> " << managed_name << "<T>(this 
Efl.BindablePart<T> part) where T : "
+                            << 
name_helpers::klass_full_concrete_or_interface_name(cls) <<  " {\n"
                             << scope_tab(2) << scope_tab << 
"Contract.Requires(part != null, nameof(part));\n"
                             << scope_tab(2) << scope_tab << "return new 
Efl.BindableProperty<" << type(true) << ">(part.PartName, \"" << property.name 
<< "\", part.Binder);\n"
                             << scope_tab(2) << "}\n\n"
diff --git a/src/bin/eolian_mono/eolian/mono/part_definition.hh 
b/src/bin/eolian_mono/eolian/mono/part_definition.hh
index 4facf27209..d87b0b56ac 100644
--- a/src/bin/eolian_mono/eolian/mono/part_definition.hh
+++ b/src/bin/eolian_mono/eolian/mono/part_definition.hh
@@ -70,9 +70,8 @@ struct part_extension_method_definition_generator
         bindableClass = "Efl.BindableFactoryPart";
 
       if (!as_generator(
-                scope_tab(2) << "public static " << bindableClass << "<" << 
part_klass_name << "> " << name_helpers::managed_part_name(part) << "<T>(this 
Efl.Ui.ItemFactory<T> fac, Efl.Csharp.ExtensionTag<"
-                            << 
name_helpers::klass_full_concrete_or_interface_name(cls)
-                            << ", T> x=null) where T : " << 
name_helpers::klass_full_concrete_or_interface_name(cls) << "\n"
+                scope_tab(2) << "public static " << bindableClass << "<" << 
part_klass_name << "> " << name_helpers::managed_part_name(part) << "<T>(this 
Efl.Ui.ItemFactory<T> fac) where T : "
+                            << 
name_helpers::klass_full_concrete_or_interface_name(cls) << "\n"
                 << scope_tab(2) << "{\n"
                 << scope_tab(2) << scope_tab << "return new " << bindableClass 
<< "<" << part_klass_name << ">(\"" << part.name << "\", fac);\n"
                 << scope_tab(2) << "}\n\n"
diff --git a/src/bindings/mono/efl_mono/Bind.cs 
b/src/bindings/mono/efl_mono/Bind.cs
index 2a4fcbded5..302f1dadd2 100644
--- a/src/bindings/mono/efl_mono/Bind.cs
+++ b/src/bindings/mono/efl_mono/Bind.cs
@@ -148,20 +148,6 @@ public class BindableFactoryPart<T>
     }
 }
 
-namespace Csharp
-{
-
-/// <summary>Helper class to differentiate between factory extension methods.
-///
-/// For internal use only.</summary>
-[EditorBrowsable(EditorBrowsableState.Never)]
-public class ExtensionTag<TBase, TInherited>
-    where TInherited : TBase
-{
-}
-
-}
-
 }
 
 #endif

-- 


Reply via email to