Files
mROA/mROA.Codegen/Tools/LinkTemplateSection.cs
T
2025-03-29 19:31:10 +03:00

39 lines
906 B
C#

namespace mROA.Codegen.Tools
{
public class LinkTemplateSection : ITemplateSection, IBaking
{
public LinkTemplateSection(string linkedTag, TemplateDocument context)
{
LinkedTag = linkedTag;
Context = context;
}
public string LinkedTag { get; }
public string Bake()
{
return Context[LinkedTag]?.ToString();
}
public TemplateDocument Context { get; set; }
public int TargetLength
{
get
{
var attached = Context[LinkedTag];
return attached?.TargetLength ?? 0;
}
}
public object Clone()
{
return new LinkTemplateSection(LinkedTag, Context);
}
public override string ToString()
{
return $"{nameof(LinkedTag)}: {LinkedTag}";
}
}
}