Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
NamedArgumentsEncoder.cs
Go to the documentation of this file.
2
3public readonly struct NamedArgumentsEncoder
4{
5 public BlobBuilder Builder { get; }
6
8 {
9 Builder = builder;
10 }
11
12 public void AddArgument(bool isField, out NamedArgumentTypeEncoder type, out NameEncoder name, out LiteralEncoder literal)
13 {
14 Builder.WriteByte((byte)(isField ? 83 : 84));
16 name = new NameEncoder(Builder);
17 literal = new LiteralEncoder(Builder);
18 }
19
20 public void AddArgument(bool isField, Action<NamedArgumentTypeEncoder> type, Action<NameEncoder> name, Action<LiteralEncoder> literal)
21 {
22 if (type == null)
23 {
24 Throw.ArgumentNull("type");
25 }
26 if (name == null)
27 {
28 Throw.ArgumentNull("name");
29 }
30 if (literal == null)
31 {
32 Throw.ArgumentNull("literal");
33 }
34 AddArgument(isField, out var type2, out var name2, out var literal2);
35 type(type2);
36 name(name2);
37 literal(literal2);
38 }
39}
static void ArgumentNull(string parameterName)
Definition Throw.cs:110
void AddArgument(bool isField, Action< NamedArgumentTypeEncoder > type, Action< NameEncoder > name, Action< LiteralEncoder > literal)
void AddArgument(bool isField, out NamedArgumentTypeEncoder type, out NameEncoder name, out LiteralEncoder literal)