我有这门课:
public struct Escapes
{
private readonly string Value;
private Escapes(string value) => Value = value;
public static implicit operator string(Escapes r) => r.Value;
public override string ToString() => Value;
public static readonly Escapes LineFeed = new Escapes("\n");
public static readonly Escapes CarriageReturn = new Escapes(new Escapes("\r"));
public static readonly Escapes Digit = new Escapes(@"\d");
public static readonly Escapes NotADigit = new Escapes(@"\D");
public static readonly Escapes WordChar = new Escapes(@"\w");
//â¦â¦â¦â¦â¦
public static Escapes AsciiChar(byte asciiCode)
{
return new Escapes( @"\x" + Convert.ToString(asciiCode, 16).PadLeft(2, '0'));
}
public static Escapes Unicode(short uniCode)
{
return new Escapes(@"\u" + Convert.ToString(uniCode, 16).PadLeft(4, '0'));
}
}
我也有这个班:
public class CharOrEscape
{
public string Value;
private CharOrEscape(string value) => Value = value;
public static implicit operator CharOrEscape(Escapes s) => new CharOrEscape(s.ToString());
public static implicit operator CharOrEscape(char c) => new CharOrEscape(c.ToString());
public static implicit operator string(CharOrEscape s) => s.ToString();
public override string ToString() => Value;
public override bool Equals(object obj) => ((CharOrEscape)obj).Value == Value;
}
我想告诉intellisense任何类型的属性或参数
CharOrEscape
我曾经看到过这样一个代码,它使用了一些属性,但是我丢失了这个项目,无法通过google搜索再次找到它。