Esempio n. 1
0
 public TemplateFunctions()
 {
     lFunctionDeclarationRegex = new Regex(TemplateInstantiationPlugin.FunctionDeclarationRegex() + "(.*)");
     lCleanConcatination       = new Regex("\\s*##\\s*");
     functionBody          = new List <string>();
     lValidateTemplateBody = new Regex(TemplateInstantiationPlugin.ValidateTemplateBlock());
 }
Esempio n. 2
0
        public override void CacheForProcessing()
        {
            if (functionTemplateTypes != null && functionTemplateTypes != "")
            {
                List <string> lCleanBody = new List <string>();
                foreach (var lLine in functionBody)
                {
                    lCleanBody.Add(CleanConcatination(lLine));
                }
                functionBody = lCleanBody;
                if (functionTemplateTypes != null && functionTemplateTypes != "")
                {
                    functionTemplateTypes = CleanConcatination(functionTemplateTypes);
                }

                if (functionReturnPreQualifiers != null)
                {
                    functionReturnPreQualifiers = CleanConcatination(functionReturnPreQualifiers);
                }
                if (functionReturnTypes != null)
                {
                    functionReturnTypes = CleanConcatination(functionReturnTypes);
                }
                if (functionPostQualifiers != null)
                {
                    functionPostQualifiers = CleanConcatination(functionPostQualifiers);
                }
                if (functionNamespace != null)
                {
                    functionNamespace = CleanConcatination(functionNamespace);
                }
                if (functionName != null)
                {
                    functionName = CleanConcatination(functionName);
                }
                if (functionParameters != null)
                {
                    functionParameters = CleanConcatination(functionParameters);
                }

                Regex lRemoveTemplateTypes = new Regex("(?:<|,)(?:\\s*" + TemplateInstantiationPlugin.NameIdentRegex() + "\\s+)(" + TemplateInstantiationPlugin.TypeIdent() + "\\s*)" + TemplateInstantiationPlugin.DefaultValue() + "?");
                //Regex lRemoveTemplateTypes = new Regex("(?:<|,)(?:\\s*[a-zA-Z0-9_]+\\s+)([a-zA-Z_][a-zA-Z0-9_]*)");
                MatchCollection lMatches = lRemoveTemplateTypes.Matches(functionTemplateTypes);
                instanceTypeblock = "<";
                foreach (Match lMatch in lMatches)
                {
                    instanceTypeblock += lMatch.Groups[1].Value + ",";
                }
                instanceTypeblock  = instanceTypeblock.Remove(instanceTypeblock.Length - 1, 1);
                instanceTypeblock += ">";
            }
            else
            {
                instanceTypeblock = null;
            }
        }
 public TemplateBlock()
 {
     templateTypes     = new TemplateTypes();
     templateLabels    = new TemplateLabels();
     templateFunctions = new List <TemplateFunctions>();
     if (lStripDefaultParams == null)
     {
         lStripDefaultParams = new Regex(TemplateInstantiationPlugin.DefaultValue());
     }
 }
Esempio n. 4
0
 public CodeBlockBodyPlugin()
 {
     lRegex        = new Regex(TemplateInstantiationPlugin.FunctionDeclarationRegex());
     codeBlockBody = new List <string>();
 }
Esempio n. 5
0
 public override string GetAcceptedCommands()
 {
     return(TemplateInstantiationPlugin.FunctionDeclarationRegex());
 }
Esempio n. 6
0
 public CodeBlockBodyPlugin()
 {
     lRegex = new Regex(TemplateInstantiationPlugin.FunctionDeclarationRegex());
     lCleanConcatination = new Regex("\\s*##\\s*");
     codeBlockBody       = new List <string>();
 }
Esempio n. 7
0
 public static string ExtractTypeRegex()
 {
     return("((?:[a-zA-Z0-9_:]+)(?:\\s*" + TemplateInstantiationPlugin.TemplateBodyRegex() + "?\\s*" + TemplateInstantiationPlugin.ParameterBodyRegex() + "?))+");
 }
Esempio n. 8
0
        public static string FunctionDeclarationRegex()
        {
            string lDeclaration = "^" + TemplateInstantiationPlugin.TemplateDeclaration() + "?" + PreQualifiersRegex() + "?\\s*(" + TemplateInstantiationPlugin.TypeIdentReturn() + ")(" + TemplateInstantiationPlugin.NamespaceDeclaration() + ")(" + TemplateInstantiationPlugin.NameIdentRegex() + ")\\(([^)]*)\\)" + PostQualifiersRegex() + "?";

            return(lDeclaration);
        }