private VBBaseModule CreateModule(SourceFileTypeEnum fileType, VisualBasic6Parser.ModuleContext context) { VBBaseModule result; switch (fileType) { case SourceFileTypeEnum.Unknown: throw new Exception("Unknown VB6 file type."); case SourceFileTypeEnum.Class: result = new VBClassModule(_vb6Lexer, _vb6Parser, _commonTokenStream, context); break; case SourceFileTypeEnum.Module: result = new VBStandardModule(_vb6Lexer, _vb6Parser, _commonTokenStream, context); break; case SourceFileTypeEnum.UserControl: throw new NotImplementedException("UserControl"); //break; case SourceFileTypeEnum.Form: throw new NotImplementedException("Form"); //break; case SourceFileTypeEnum.PropertyPage: throw new NotImplementedException("PropertyPage"); //break; default: throw new Exception("Unsupported VB6 file type."); } return(result); }
public VBBaseModule CreateModuleCodeModels(VisualBasic6Parser.ModuleContext context) { // Create & extract module level metadata _moduleCodeModel = CreateModule(_fileType, context); var moduleVisitor = new VB6ModuleVisitor(_moduleCodeModel, _vb6Lexer, _vb6Parser, _commonTokenStream); moduleVisitor.Visit(context); moduleVisitor.PostProcess(); // Visit code blocks to create code object model for analysis & conversion. var codeModelVisitor = new VB6CodeModelVisitor(_moduleCodeModel, _moduleCodeModel, _vb6Lexer, _vb6Parser, _commonTokenStream); codeModelVisitor.Visit(context.moduleBody()); codeModelVisitor.PostProcess(); return(_moduleCodeModel); }
public override object VisitModule([NotNull] VisualBasic6Parser.ModuleContext context) { return(base.VisitModule(context)); }
public UserControlCodeGenerator(VisualBasic6Parser.ModuleContext parseTree) : base(parseTree) { }
public FormsCodeGeneratorBase(VisualBasic6Parser.ModuleContext parseTree) : base(parseTree) { }
protected override CodeGeneratorBase CreateCodeGenerator(VisualBasic6Parser.ModuleContext parseTree) { return(new ClassModuleCodeGenerator(parseTree)); }
protected abstract CodeGeneratorBase CreateCodeGenerator(VisualBasic6Parser.ModuleContext parseTree);
public ClassModuleCodeGenerator(VisualBasic6Parser.ModuleContext parseTree) : base(parseTree) { }
public override void EnterModule([NotNull] VisualBasic6Parser.ModuleContext context) { base.EnterModule(context); context.moduleBody(); }
/// <summary> /// Initialises this instance with the given VB6 AST. /// </summary> /// <param name="parseTree"></param> public CodeGeneratorBase(VisualBasic6Parser.ModuleContext parseTree) { mParseTree = parseTree; mMainDeclMembers = new List <StatementSyntax>(); }
public override void ExitModule([NotNull] VisualBasic6Parser.ModuleContext context) { }