Example #1
0
 /// <summary>
 /// Finds a class by its name.
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 public MacroClass FindClassByType(Language.ClankType type)
 {
     foreach (MacroClass klass in ClassDeclarations)
     {
         if (klass.Type.GetFullName() == type.GetFullName())
         {
             return(klass);
         }
     }
     throw new Exception("Class not found : " + type.GetFullName());
 }
Example #2
0
        /// <summary>
        /// Nom par lequel se référrer à cette fonction dans une table de fonctions.
        /// </summary>
        public string GetFullName()
        {
            StringBuilder argTypes = new StringBuilder();

            argTypes.Append("(");
            foreach (FunctionArgument arg in Arguments)
            {
                argTypes.Append(arg.ArgType.GetFullName() + (arg == Arguments.Last() ? "" : ", "));
            }
            argTypes.Append(")");

            if (Owner == null)
            {
                return(Name + argTypes);
            }
            else
            {
                return(Owner.GetFullName() + "." + Name + argTypes);
            }
        }