public void TestMethodProtected1() { var a = typeof(MethodModel).GetMethod("M"); Assert.Equal("virtual ", ModifierReverser.GetModifier(a)); Assert.False(a.IsAbstract); }
public StringBuilder GetModifyBuilder() { ModifierScript.Clear(); if (_status.Contains(Modifiers.Static)) { ModifierScript.Append("static "); } if (_status.Contains(Modifiers.Unsafe)) { ModifierScript.Append("unsafe "); } foreach (var item in _status) { if (item != Modifiers.Static && item != Modifiers.Unsafe) { ModifierScript.Append(ModifierReverser.GetModifier(item)); } } ModifierScript.Append(_modifierScript); return(ModifierScript); }
public void TestMethodProtected2() { var a = typeof(MethodModel2).GetMethod("M"); Assert.Equal("abstract ", ModifierReverser.GetModifier(a)); Assert.True(a.IsVirtual); }
public override T Builder() { StringBuilder builder = new StringBuilder(); if (_status.Contains(Modifiers.Static)) { builder.Append("static "); _status.Remove(Modifiers.Static); } if (_status.Contains(Modifiers.Unsafe)) { builder.Append("unsafe "); _status.Remove(Modifiers.Unsafe); } ModifierScript.Insert(0, builder); foreach (var item in _status) { ModifierAppend(ModifierReverser.GetModifier(item)); } // [Attribute] // [access] [{this}] base.Builder(); _script.Append(ModifierScript); return(Link); }
public string GetModifyBuilder() { StringBuilder builder = new StringBuilder(); if (_status.Contains(ModifierFlags.Static)) { builder.Append("static "); } if (_status.Contains(ModifierFlags.Unsafe)) { builder.Append("unsafe "); } foreach (var item in _status) { if (item != ModifierFlags.Static && item != ModifierFlags.Unsafe) { builder.Append(ModifierReverser.GetModifier(item)); } } builder.Append(_modifierScript); return(builder.ToString()); }
public override T BuilderScript() { ModifierScript.Clear(); if (_status.Contains(Modifiers.Static)) { ModifierScript.Append("static "); } if (_status.Contains(Modifiers.Unsafe)) { ModifierScript.Append("unsafe "); } foreach (var item in _status) { if (item != Modifiers.Static && item != Modifiers.Unsafe) { ModifierScript.Append(ModifierReverser.GetModifier(item)); } } ModifierScript.Append(_modifierScript); // [Attribute] // [access] [{this}] base.BuilderScript(); _script.Append(ModifierScript); return(Link); }
public void TestMethod2() { var info = typeof(InterfaceMethodModel).GetMethod("M"); Assert.True(info.IsVirtual); Assert.True(info.IsHideBySig); Assert.True(info.IsAbstract); Assert.True(info.GetBaseDefinition() == info); Assert.False(info.IsFinal); Assert.Equal("", ModifierReverser.GetModifier(info)); }
public void TestMetho6() { var info = typeof(OverrideVirtualMethodModel).GetMethod("M"); Assert.True(info.IsVirtual); Assert.True(info.IsHideBySig); Assert.False(info.GetBaseDefinition() == info); Assert.False(info.IsAbstract); Assert.False(info.IsFinal); Assert.False(IsNotNewMethod(info)); Assert.Equal("override ", ModifierReverser.GetModifier(info)); }
/// <summary> /// 根据类型反射得到保护级别 /// </summary> /// <param name="type">外部类型</param> /// <returns></returns> public T Modifier(Type type) { _modifierScript = ModifierReverser.GetModifier(type); return(Link); }
/// <summary> /// 通过方法元数据反射出特殊修饰符 /// </summary> /// <param name="modifierInfo">方法元数据</param> /// <returns></returns> public T Modifier(MethodInfo modifierInfo) { _modifierScript = ModifierReverser.GetModifier(modifierInfo); return(Link); }
/// 通过属性元数据反射出特殊修饰符 /// </summary> /// <param name="modifierInfo">属性元数据</param> /// <returns></returns> public T Modifier(PropertyInfo modifierInfo) { _modifierScript = ModifierReverser.GetModifier(modifierInfo); return(Link); }
public T MemberModifier(Modifiers modifier) { MemberModifierScript = ModifierReverser.GetModifier(modifier); return(Link); }
public void TestMethodProtected3() { var a = typeof(MethodModel3).GetMethod("M"); Assert.Equal("override ", ModifierReverser.GetModifier(a)); }
/// <summary> /// 根据类型反射得到保护级别 /// </summary> /// <param name="type">外部类型</param> /// <returns></returns> public T Modifier(Type type) { ModifierScript.Append(ModifierReverser.GetModifier(type)); return(Link); }
/// <summary> /// 通过方法元数据反射出特殊修饰符 /// </summary> /// <param name="modifierInfo">方法元数据</param> /// <returns></returns> public T Modifier(MethodInfo modifierInfo) { ModifierScript.Append(ModifierReverser.GetModifier(modifierInfo)); return(Link); }
public T MethodModifier(MethodInfo modifier) { OnceModifierScript = ModifierReverser.GetModifier(modifier); return(Link); }
public T OopModifier(Modifiers enumModifier) { OopModifierScript = ModifierReverser.GetModifier(enumModifier); return(Link); }
public T OopModifier(MethodInfo reflectMethodInfo) { OopModifierScript = ModifierReverser.GetModifier(reflectMethodInfo); return(Link); }
public void TestMethodProtected4() { var a = typeof(IMethodModel4).GetMethod("M"); Assert.Equal(null, ModifierReverser.GetModifier(a)); }