private static void _resolve(string filename, string output_dir) { var fname = Path.GetFileName(filename); var lines = File.ReadAllLines(filename); string newfilename = output_dir + "/" + fname; StreamWriter wr = new StreamWriter(newfilename); foreach (var line in lines) { string writeline = line; var trimmed = line.Trim(); if (trimmed.StartsWith("///")) { var tokens = trimmed.Split(' '); foreach (var token in tokens) { string class_name_candidate = token; sates.core.doc doc_var = sates.core.doc_list.get(token); string prefix = ""; bool need_to_fix = false; if (null == doc_var) { // class 이름 앞에 *, -, # 등 다른 어떤 표기 / 문법 등을 위해 // 붙혔을 경우를 대비 prefix = token.Substring(0, 1); class_name_candidate = token.Remove(0, 1); doc_var = sates.core.doc_list.get(class_name_candidate); if (null != doc_var) { need_to_fix = true; } } if (null != doc_var) { string newstr = ""; foreach (var cat in doc_var.category_info) { newstr += cat; newstr += "."; } newstr += class_name_candidate; writeline = line.Replace(class_name_candidate, newstr); if (need_to_fix) { writeline = writeline.Replace(prefix + newstr, prefix + " " + newstr); } } } } wr.WriteLine(writeline); } wr.Close(); wr.Dispose(); }
public override void gen(sates.core.doc doc) { // see https://www.iqasystem.com/news/risk-priority-number/ //critical_number = severity * occurrence doc.get_info("severity").get(out long severity); doc.get_info("occurrence").get(out long occurrence); var critical_number = severity * occurrence; doc.get_info(info_name).set(critical_number); }
public override void gen(sates.core.doc doc) { // see https://www.iqasystem.com/news/risk-priority-number/ //sod (Severity, Occurrence, Detection) = 100 * severity + 10 * occurrence + detection doc.get_info("severity").get(out long severity); doc.get_info("occurrence").get(out long occurrence); doc.get_info("detection").get(out long detection); var sod = 100 * severity + 10 * occurrence + detection; doc.get_info("sod").set(sod); }
public override void gen(sates.core.doc doc) { // see https://www.iqasystem.com/news/risk-priority-number/ //risk_priority_number = severity * occurrence * detection doc.get_info("severity").get(out long severity); doc.get_info("occurrence").get(out long occurrence); doc.get_info("detection").get(out long detection); var risk_priority_number = severity * occurrence * detection; doc.get_info(info_name).set(risk_priority_number); }
public abstract void write(string root_path, sates.core.doc doc, string lang_name);
public abstract void gen(sates.core.doc doc);
public static void wrtie(string root_path, sates.core.doc doc, string lang_name) { }