示例#1
0
 /// <summary>
 /// メソッド定義が内容的に同じであるか
 /// </summary>
 /// <param name="obj">比較対象</param>
 /// <returns>内容的に同じであるかどうか</returns>
 public bool CompareMethod(LayerdMethodDefinition obj)
 {
     if ((obj.Name == Name) && (obj.Parameters.Count == Parameters.Count))
     {
         int n = obj.Parameters.Count;
         for (int i = 0; i < n; ++i)
         {
             if (!obj.Parameters[i].Type.CompareType(Parameters[i].Type))
             {
                 return(false);
             }
         }
     }
     else
     {
         return(false);
     }
     return(true);
 }
示例#2
0
        /// <summary>
        /// メソッド実装に対応するメソッド定義を返す
        /// </summary>
        /// <returns>メソッド定義</returns>
        public LayerdMethodDefinition ToLayerdMethodDefinition()
        {
            var result = new LayerdMethodDefinition(MethodName, ReturnType, Parameters, Contents, new string[] { }, ThisModifiers, IsNoexcept, false);

            return(result);
        }
示例#3
0
 /// <summary>
 /// イベントハンドラの定義
 /// </summary>
 /// <param name="eventName">イベント名</param>
 /// <param name="method">メソッド情報</param>
 public EventHandlerDefinition(string eventName, LayerdMethodDefinition method)
     : base(method.Name, method.ReturnType, method.Parameters, method.Contents, method.Modifiers, method.ThisModifiers, method.IsNoexcept, method.IsOverride)
 {
     EventName = eventName;
 }