Ejemplo n.º 1
0
 public override string Visit(MemberFloat memberText)
 {
     return("single");
 }
Ejemplo n.º 2
0
 public abstract TResult Visit(MemberFloat memberText);
Ejemplo n.º 3
0
        public override string Visit(MemberFloat memberText)
        {
            string typeName = StringExt.ToTitleCase(_member.Name);

            return($@"[Serializable]
[JsonConverter(typeof(FloatStrongTypeConverter<{typeName}>))]
public partial struct {typeName} : ITypedFloat, IStrongTypeFactory<float, {typeName}>, IEquatable<{typeName}>
{{
    private readonly float _value;

    private {typeName}(float @float)
    {{
        _value = @float;
    }}

    public static explicit operator {typeName}(float value)
    {{
        return new {typeName}(value);
    }}

    public static implicit operator float({typeName} value)
    {{
        return value._value;
    }}

    public float UnderlyingValue()
    {{
        return _value;
    }}

    public float Value {{ get {{ return _value; }} }}

    {typeName} IStrongTypeFactory<float, {typeName}>.NewWithValue(float value)
    {{
        return new {typeName}(value);
    }}

    public TResult Accept<TResult>(IStrongTypeVistor<TResult> visitor)
    {{
        return visitor.Visit(this);
    }}

    public override string ToString()
    {{
        return _value.ToString();
    }}

    public string ToString(string format)
    {{
        return _value.ToString(format);
    }}

    public string ToString(IFormatProvider provider)
    {{
        return _value.ToString(provider);
    }}

    public string ToString(string format, IFormatProvider provider)
    {{
        return _value.ToString(format, provider);
    }}

    public override bool Equals(object other)
    {{
        if (other is {typeName})
        {{
            return Equals(({typeName})other);
        }}
        return false;
    }}

    public override int GetHashCode()
    {{
        return _value.GetHashCode();
    }}

    public bool Equals({typeName} other)
    {{
        return _value.Equals(other._value);
    }}

    public static bool operator ==({typeName} left, {typeName} right)
    {{
        return left.Equals(right);
    }}

    public static bool operator !=({typeName} left, {typeName} right)
    {{
        return !left.Equals(right);
    }}
}}");
        }
Ejemplo n.º 4
0
 public override TResult Visit(MemberFloat memberText)
 {
     return(DefaultVisit(memberText));
 }
 public override bool Visit(MemberFloat memberText)
 {
     return(true);
 }
Ejemplo n.º 6
0
 public override string Visit(MemberFloat member)
 {
     return("float" + Optionality());
 }