コード例 #1
0
        public override CompiledTemplate LoadTemplateFile(string prefix, string unqualifiedFileName,
                                                          ICharStream templateStream)
        {
            string           template     = templateStream.Substring(0, templateStream.Count);
            string           templateName = Path.GetFileNameWithoutExtension(unqualifiedFileName);
            string           fullyQualifiedTemplateName = prefix + templateName;
            CompiledTemplate impl  = new TemplateCompiler(this).Compile(fullyQualifiedTemplateName, template);
            CommonToken      nameT = new CommonToken(TemplateLexer.SEMI); // Seems like a hack, best I could come up with.

            nameT.InputStream = templateStream;
            RawDefineTemplate(fullyQualifiedTemplateName, impl, nameT);
            impl.DefineImplicitlyDefinedTemplates(this);
            return(impl);
        }