If you want them "segregated", then you'd have to either invent your own type:
public struct MyBool { public MyBool(bool value) : this() { this.Value = value; } public bool Value { get; private set; } } public static MyBoolExtensions { public static char convert_to_YorN(this MyBool value) { return value.Value ? 'Y' : 'N'; } } public static BooleanExtensions { public static MyBool bool_ext(this bool value) { return new MyBool(value); } }
Which can be used like:
bool b = true; char c = b.bool_ext().convert_to_YorN();
Or just use them as static methods:
public class MyBoolConverters { public static char convert_to_YorN(bool value) { return value.Value ? 'Y' : 'N'; } }
Which can be used like:
bool b = true; char c = MyBoolConverters.convert_to_YorN(b);
But you cannot categorize them like you show.
b.bool_ext().convert_to_YorN()