22
33import csharp
44private import semmle.code.csharp.frameworks.System
5+ private import semmle.code.csharp.dataflow.ExternalFlow
56
67/** The `System.Text` namespace. */
78class SystemTextNamespace extends Namespace {
@@ -24,6 +25,97 @@ class SystemTextStringBuilderClass extends SystemTextClass {
2425 Method getAppendFormatMethod ( ) { result = this .getAMethod ( "AppendFormat" ) }
2526}
2627
28+ /** Data flow for `System.Text.StringBuilder`. */
29+ private class SystemTextStringBuilderFlowModelCsv extends SummaryModelCsv {
30+ override predicate row ( string row ) {
31+ row =
32+ [
33+ "System.Text;StringBuilder;false;Append;(System.Boolean);;Argument[-1];ReturnValue;value" ,
34+ "System.Text;StringBuilder;false;Append;(System.Byte);;Argument[-1];ReturnValue;value" ,
35+ "System.Text;StringBuilder;false;Append;(System.Char);;Argument[-1];ReturnValue;value" ,
36+ "System.Text;StringBuilder;false;Append;(System.Char*,System.Int32);;Argument[-1];ReturnValue;value" ,
37+ "System.Text;StringBuilder;false;Append;(System.Char,System.Int32);;Argument[-1];ReturnValue;value" ,
38+ "System.Text;StringBuilder;false;Append;(System.Char[]);;Argument[-1];ReturnValue;value" ,
39+ "System.Text;StringBuilder;false;Append;(System.Char[]);;Element of Argument[0];Element of Argument[-1];value" ,
40+ "System.Text;StringBuilder;false;Append;(System.Char[],System.Int32,System.Int32);;Argument[-1];ReturnValue;value" ,
41+ "System.Text;StringBuilder;false;Append;(System.Char[],System.Int32,System.Int32);;Element of Argument[0];Element of Argument[-1];value" ,
42+ "System.Text;StringBuilder;false;Append;(System.Decimal);;Argument[-1];ReturnValue;value" ,
43+ "System.Text;StringBuilder;false;Append;(System.Double);;Argument[-1];ReturnValue;value" ,
44+ "System.Text;StringBuilder;false;Append;(System.Int16);;Argument[-1];ReturnValue;value" ,
45+ "System.Text;StringBuilder;false;Append;(System.Int32);;Argument[-1];ReturnValue;value" ,
46+ "System.Text;StringBuilder;false;Append;(System.Int64);;Argument[-1];ReturnValue;value" ,
47+ "System.Text;StringBuilder;false;Append;(System.Object);;Argument[0];Element of Argument[-1];value" ,
48+ "System.Text;StringBuilder;false;Append;(System.Object);;Argument[-1];ReturnValue;value" ,
49+ "System.Text;StringBuilder;false;Append;(System.ReadOnlyMemory<System.Char>);;Argument[-1];ReturnValue;value" ,
50+ "System.Text;StringBuilder;false;Append;(System.ReadOnlySpan<System.Char>);;Argument[-1];ReturnValue;value" ,
51+ "System.Text;StringBuilder;false;Append;(System.SByte);;Argument[-1];ReturnValue;value" ,
52+ "System.Text;StringBuilder;false;Append;(System.Single);;Argument[-1];ReturnValue;value" ,
53+ "System.Text;StringBuilder;false;Append;(System.String);;Argument[0];Element of Argument[-1];value" ,
54+ "System.Text;StringBuilder;false;Append;(System.String);;Argument[-1];ReturnValue;value" ,
55+ "System.Text;StringBuilder;false;Append;(System.String,System.Int32,System.Int32);;Argument[0];Element of Argument[-1];value" ,
56+ "System.Text;StringBuilder;false;Append;(System.String,System.Int32,System.Int32);;Argument[-1];ReturnValue;value" ,
57+ "System.Text;StringBuilder;false;Append;(System.Text.StringBuilder);;Argument[-1];ReturnValue;value" ,
58+ "System.Text;StringBuilder;false;Append;(System.Text.StringBuilder,System.Int32,System.Int32);;Argument[-1];ReturnValue;value" ,
59+ "System.Text;StringBuilder;false;Append;(System.UInt16);;Argument[-1];ReturnValue;value" ,
60+ "System.Text;StringBuilder;false;Append;(System.UInt32);;Argument[-1];ReturnValue;value" ,
61+ "System.Text;StringBuilder;false;Append;(System.UInt64);;Argument[-1];ReturnValue;value" ,
62+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object);;Argument[1];Element of Argument[-1];value" ,
63+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object);;Argument[2];Element of Argument[-1];value" ,
64+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object);;Argument[-1];ReturnValue;value" ,
65+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object);;Argument[1];Element of Argument[-1];value" ,
66+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object);;Argument[2];Element of Argument[-1];value" ,
67+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object);;Argument[3];Element of Argument[-1];value" ,
68+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object);;Argument[-1];ReturnValue;value" ,
69+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object,System.Object);;Argument[1];Element of Argument[-1];value" ,
70+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object,System.Object);;Argument[2];Element of Argument[-1];value" ,
71+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object,System.Object);;Argument[3];Element of Argument[-1];value" ,
72+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object,System.Object);;Argument[4];Element of Argument[-1];value" ,
73+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object,System.Object,System.Object);;Argument[-1];ReturnValue;value" ,
74+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object[]);;Argument[1];Element of Argument[-1];value" ,
75+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object[]);;Argument[-1];ReturnValue;value" ,
76+ "System.Text;StringBuilder;false;AppendFormat;(System.IFormatProvider,System.String,System.Object[]);;Element of Argument[2];Element of Argument[-1];value" ,
77+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object);;Argument[0];Element of Argument[-1];value" ,
78+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object);;Argument[1];Element of Argument[-1];value" ,
79+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object);;Argument[-1];ReturnValue;value" ,
80+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object);;Argument[0];Element of Argument[-1];value" ,
81+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object);;Argument[1];Element of Argument[-1];value" ,
82+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object);;Argument[2];Element of Argument[-1];value" ,
83+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object);;Argument[-1];ReturnValue;value" ,
84+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object,System.Object);;Argument[0];Element of Argument[-1];value" ,
85+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object,System.Object);;Argument[1];Element of Argument[-1];value" ,
86+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object,System.Object);;Argument[2];Element of Argument[-1];value" ,
87+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object,System.Object);;Argument[3];Element of Argument[-1];value" ,
88+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object,System.Object,System.Object);;Argument[-1];ReturnValue;value" ,
89+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object[]);;Argument[0];Element of Argument[-1];value" ,
90+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object[]);;Argument[-1];ReturnValue;value" ,
91+ "System.Text;StringBuilder;false;AppendFormat;(System.String,System.Object[]);;Element of Argument[1];Element of Argument[-1];value" ,
92+ "System.Text;StringBuilder;false;AppendJoin;(System.Char,System.Object[]);;Argument[-1];ReturnValue;value" ,
93+ "System.Text;StringBuilder;false;AppendJoin;(System.Char,System.Object[]);;Element of Argument[1];Element of Argument[-1];value" ,
94+ "System.Text;StringBuilder;false;AppendJoin;(System.Char,System.String[]);;Argument[-1];ReturnValue;value" ,
95+ "System.Text;StringBuilder;false;AppendJoin;(System.Char,System.String[]);;Element of Argument[1];Element of Argument[-1];value" ,
96+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.Object[]);;Argument[0];Element of Argument[-1];value" ,
97+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.Object[]);;Argument[-1];ReturnValue;value" ,
98+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.Object[]);;Element of Argument[1];Element of Argument[-1];value" ,
99+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.String[]);;Argument[0];Element of Argument[-1];value" ,
100+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.String[]);;Argument[-1];ReturnValue;value" ,
101+ "System.Text;StringBuilder;false;AppendJoin;(System.String,System.String[]);;Element of Argument[1];Element of Argument[-1];value" ,
102+ "System.Text;StringBuilder;false;AppendJoin<>;(System.Char,System.Collections.Generic.IEnumerable<T>);;Argument[-1];ReturnValue;value" ,
103+ "System.Text;StringBuilder;false;AppendJoin<>;(System.Char,System.Collections.Generic.IEnumerable<T>);;Element of Argument[1];Element of Argument[-1];value" ,
104+ "System.Text;StringBuilder;false;AppendJoin<>;(System.String,System.Collections.Generic.IEnumerable<T>);;Argument[0];Element of Argument[-1];value" ,
105+ "System.Text;StringBuilder;false;AppendJoin<>;(System.String,System.Collections.Generic.IEnumerable<T>);;Argument[-1];ReturnValue;value" ,
106+ "System.Text;StringBuilder;false;AppendJoin<>;(System.String,System.Collections.Generic.IEnumerable<T>);;Element of Argument[1];Element of Argument[-1];value" ,
107+ "System.Text;StringBuilder;false;AppendLine;();;Argument[-1];ReturnValue;value" ,
108+ "System.Text;StringBuilder;false;AppendLine;(System.String);;Argument[0];Element of Argument[-1];value" ,
109+ "System.Text;StringBuilder;false;AppendLine;(System.String);;Argument[-1];ReturnValue;value" ,
110+ "System.Text;StringBuilder;false;StringBuilder;(System.String);;Argument[0];Element of ReturnValue;value" ,
111+ "System.Text;StringBuilder;false;StringBuilder;(System.String,System.Int32);;Argument[0];Element of ReturnValue;value" ,
112+ "System.Text;StringBuilder;false;StringBuilder;(System.String,System.Int32,System.Int32,System.Int32);;Argument[0];Element of ReturnValue;value" ,
113+ "System.Text;StringBuilder;false;ToString;();;Element of Argument[-1];ReturnValue;taint" ,
114+ "System.Text;StringBuilder;false;ToString;(System.Int32,System.Int32);;Element of Argument[-1];ReturnValue;taint" ,
115+ ]
116+ }
117+ }
118+
27119/** The `System.Text.Encoding` class. */
28120class SystemTextEncodingClass extends SystemTextClass {
29121 SystemTextEncodingClass ( ) { this .hasName ( "Encoding" ) }
0 commit comments