/// <summary> /// Initialize a DownloadTask with a given key /// </summary> public DownloadTask( string key, AbstractTarget target, string destinationFileName, string destinationFolderKey, DateTime creationTime, bool isBackgroundDownloadAllowed ) { Key = key; Target = target; DestinationFileName = destinationFileName; DestinationFolderKey = destinationFolderKey; CreationTime = creationTime; IsBackgroundDownloadAllowed = isBackgroundDownloadAllowed; }
/** From T.g return a list of File objects that * name files ANTLR will emit from T.g. */ public virtual IList <string> GetGeneratedFileList() { AbstractTarget target = generator.GetTarget(); if (target == null) { // if the target could not be loaded, no code will be generated. return(new List <string>()); } IList <string> files = new List <string>(); // add generated recognizer; e.g., TParser.java if (generator.GetTarget().NeedsHeader()) { files.Add(GetOutputFile(generator.GetRecognizerFileName(true))); } files.Add(GetOutputFile(generator.GetRecognizerFileName(false))); // add output vocab file; e.g., T.tokens. This is always generated to // the base output directory, which will be just . if there is no -o option // files.Add(GetOutputFile(generator.GetVocabFileName())); // are we generating a .h file? Template headerExtST = null; Template extST = target.GetTemplates().GetInstanceOf("codeFileExtension"); if (target.GetTemplates().IsDefined("headerFile")) { headerExtST = target.GetTemplates().GetInstanceOf("headerFileExtension"); string suffix = Grammar.GetGrammarTypeToFileNameSuffix(g.Type); string fileName = g.name + suffix + headerExtST.Render(); files.Add(GetOutputFile(fileName)); } if (g.IsCombined()) { // add autogenerated lexer; e.g., TLexer.java TLexer.h TLexer.tokens string suffix = Grammar.GetGrammarTypeToFileNameSuffix(ANTLRParser.LEXER); string lexer = g.name + suffix + extST.Render(); files.Add(GetOutputFile(lexer)); string lexerTokens = g.name + suffix + CodeGenerator.VOCAB_FILE_EXTENSION; files.Add(GetOutputFile(lexerTokens)); // TLexer.h if (headerExtST != null) { string header = g.name + suffix + headerExtST.Render(); files.Add(GetOutputFile(header)); } } if (g.tool.gen_listener) { // add generated listener; e.g., TListener.java if (generator.GetTarget().NeedsHeader()) { files.Add(GetOutputFile(generator.GetListenerFileName(true))); } files.Add(GetOutputFile(generator.GetListenerFileName(false))); // add generated base listener; e.g., TBaseListener.java if (generator.GetTarget().NeedsHeader()) { files.Add(GetOutputFile(generator.GetBaseListenerFileName(true))); } files.Add(GetOutputFile(generator.GetBaseListenerFileName(false))); } if (g.tool.gen_visitor) { // add generated visitor; e.g., TVisitor.java if (generator.GetTarget().NeedsHeader()) { files.Add(GetOutputFile(generator.GetVisitorFileName(true))); } files.Add(GetOutputFile(generator.GetVisitorFileName(false))); // add generated base visitor; e.g., TBaseVisitor.java if (generator.GetTarget().NeedsHeader()) { files.Add(GetOutputFile(generator.GetBaseVisitorFileName(true))); } files.Add(GetOutputFile(generator.GetBaseVisitorFileName(false))); } // handle generated files for imported grammars IList <Grammar> imports = g.GetAllImportedGrammars(); if (imports != null) { foreach (Grammar g in imports) { //string outputDir = tool.GetOutputDirectory(g.fileName); //string fname = GroomQualifiedFileName(outputDir, g.GetRecognizerName() + extST.Render()); //files.Add(Path.Combine(outputDir, fname)); files.Add(GetOutputFile(g.fileName)); } } if (files.Count == 0) { return(null); } return(files); }
public void InitTargetEvents (AbstractTarget target) { target.TargetDown += OnTargetDown; target.TargetDestroyed += OnTargetDestroyed; }