public WaitForCompleteAnalysisDialog(GeneroProjectAnalyzer analyzer)
        {
            _analyzer = analyzer;
            InitializeComponent();

            new Thread(AnalysisComplete).Start();
        }
Exemplo n.º 2
0
 internal void RecreateAnalyzer()
 {
     if (_analyzer != null)
     {
         _analyzer.Dispose();
     }
     _analyzer = CreateAnalyzer();
 }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
 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());
 }
Exemplo n.º 5
0
 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;
 }
Exemplo n.º 6
0
        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();
            }
        }
Exemplo n.º 7
0
 /// <summary>
 /// Creates a new parse queue which will parse using the provided parser.
 /// </summary>
 /// <param name="parser"></param>
 public ParseQueue(GeneroProjectAnalyzer parser)
 {
     _parser = parser;
 }
Exemplo n.º 8
0
 /// <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));
 }
Exemplo n.º 9
0
 /// <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));
 }
Exemplo n.º 10
0
 /// <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));
 }