/// <summary>
        /// Writes the class diagram.
        /// </summary>
        /// <param name="enum">The enum.</param>
        /// <returns></returns>
        internal static string WriteClassDiagram(Models.Enum @enum)
        {
            string markup = Templates.Descriptor;

            markup = markup.Replace(TypeElement, "enum ").Replace(NameElement, @enum.Name).Replace(ProtoTypeElement, "").Replace(StereoTypeElement, "");
            string Body = string.Empty;

            foreach (var num in @enum.Values)
            {
                Body += (num.Key + ":" + num.Value.ToString()) + Environment.NewLine;
            }

            markup = markup.Replace(BodyElement, Body);

            return(markup);
        }
Beispiel #2
0
        /// <summary>
        /// Converts to enum.
        /// </summary>
        /// <param name="type">The type.</param>
        /// <returns></returns>
        private static Models.Enum ConvertToEnum(Type type)
        {
            Dictionary <object, object> Values = new Dictionary <object, object>();

            type.GetFields().ToList().ForEach((e) =>
            {
                if (e.FieldType.IsEnum)
                {
                    Values.Add(e.Name, e.GetRawConstantValue());
                }
            });

            var @enum = new Models.Enum
            {
                Name   = Regex.Replace(type.Name, TypingSetter, ""),
                Values = Values
            };

            @enum.Diagram       = string.Format(Templates.PsuedoCode, AssemblyDiagrammer.WriteClassDiagram(@enum));
            @enum.DiagramUrl    = DiagramService.GetImageUrlForSource(@enum.Diagram, "svg");
            @enum.Documentation = "";

            return(@enum);
        }