public WaitForCompleteAnalysisDialog(GeneroProjectAnalyzer analyzer) { _analyzer = analyzer; InitializeComponent(); new Thread(AnalysisComplete).Start(); }
internal void RecreateAnalyzer() { if (_analyzer != null) { _analyzer.Dispose(); } _analyzer = CreateAnalyzer(); }
private const int ReparseDelay = 1000; // delay in MS before we re-parse a buffer w/ non-line changes. public BufferParser(ParseQueue queue, Dispatcher dispatcher, IProjectEntry initialProjectEntry, GeneroProjectAnalyzer parser, ITextBuffer buffer) { _queue = queue; _parser = parser; _timer = new Timer(ReparseTimer, null, Timeout.Infinite, Timeout.Infinite); _buffers = new[] { buffer }; _currentProjEntry = initialProjectEntry; _dispatcher = dispatcher; AttachedViews = 1; InitBuffer(buffer); }
public PreviewChangesEngine(IServiceProvider serviceProvider, IRenameVariableInput input, ExpressionAnalysis analysis, RenameVariableRequest request, string originalName, string privatePrefix, GeneroProjectAnalyzer analyzer, IEnumerable <IAnalysisVariable> variables) { _serviceProvider = serviceProvider; _analysis = analysis; _analyzer = analyzer; _renameReq = request; _originalName = originalName; _privatePrefix = privatePrefix; _variables = variables; _input = input; _list = new PreviewList(CreatePreviewItems().ToArray()); }
internal ExpressionAnalysis(GeneroProjectAnalyzer analyzer, string expression, GeneroAst analysis, int index, ITrackingSpan span, ITextSnapshot snapshot, IFunctionInformationProvider functionProvider, IDatabaseInformationProvider databaseProvider, IProgramFileProvider programFileProvider, bool isFunctionCallOrDefinition) { _expr = expression; _analysis = analysis; _index = index; _span = span; _analyzer = analyzer; _snapshot = snapshot; _functionProvider = functionProvider; _databaseProvider = databaseProvider; _programFileProvider = programFileProvider; _isFunctionCallOrDefinition = isFunctionCallOrDefinition; }
internal AnalysisQueue(GeneroProjectAnalyzer analyzer) { _workEvent = new AutoResetEvent(false); _cancel = new CancellationTokenSource(); _analyzer = analyzer; _queue = new List <IAnalyzable> [PriorityCount]; for (int i = 0; i < PriorityCount; i++) { _queue[i] = new List <IAnalyzable>(); } _workThread = new Thread(Worker); _workThread.Name = "Genero Analysis Queue"; _workThread.Priority = ThreadPriority.BelowNormal; _workThread.IsBackground = true; // start the thread, wait for our synchronization context to be created using (AutoResetEvent threadStarted = new AutoResetEvent(false)) { _workThread.Start(threadStarted); threadStarted.WaitOne(); } }
/// <summary> /// Creates a new parse queue which will parse using the provided parser. /// </summary> /// <param name="parser"></param> public ParseQueue(GeneroProjectAnalyzer parser) { _parser = parser; }
/// <summary> /// Gets a ExpressionAnalysis for the expression at the provided span. If the span is in /// part of an identifier then the expression is extended to complete the identifier. /// </summary> public static ExpressionAnalysis AnalyzeExpression(this ITextSnapshot snapshot, ITrackingSpan span, bool forCompletion, IFunctionInformationProvider functionProvider, IDatabaseInformationProvider databaseProvider, IProgramFileProvider programFileProvider) { return(GeneroProjectAnalyzer.AnalyzeExpression(snapshot, span, functionProvider, databaseProvider, programFileProvider, forCompletion)); }
/// <summary> /// Gets a list of signatuers available for the expression at the provided location in the snapshot. /// </summary> public static SignatureAnalysis GetSignatures(this ITextSnapshot snapshot, ITrackingSpan span, IFunctionInformationProvider functionProvider) { return(GeneroProjectAnalyzer.GetSignatures(snapshot, span, functionProvider)); }
/// <summary> /// Gets a CompletionAnalysis providing a list of possible members the user can dot through. /// </summary> public static CompletionAnalysis GetCompletions(this ITextSnapshot snapshot, ITrackingSpan span, ITrackingPoint point, CompletionOptions options, IFunctionInformationProvider functionProvider, IDatabaseInformationProvider databaseProvider, IProgramFileProvider programFileProvider) { return(GeneroProjectAnalyzer.GetCompletions(snapshot, span, point, options, functionProvider, databaseProvider, programFileProvider)); }