IScanner.ScanTokenAndProvideInfoAboutIt(TokenInfo, Int32) Methode

Definition

Analysiert das nächste Sprachtoken in der aktuellen Zeile und gibt Informationen dazu zurück.

public:
 bool ScanTokenAndProvideInfoAboutIt(Microsoft::VisualStudio::Package::TokenInfo ^ tokenInfo, int % state);
bool ScanTokenAndProvideInfoAboutIt(Microsoft::VisualStudio::Package::TokenInfo const & tokenInfo, int & state);
public bool ScanTokenAndProvideInfoAboutIt (Microsoft.VisualStudio.Package.TokenInfo tokenInfo, ref int state);
abstract member ScanTokenAndProvideInfoAboutIt : Microsoft.VisualStudio.Package.TokenInfo * int -> bool
Public Function ScanTokenAndProvideInfoAboutIt (tokenInfo As TokenInfo, ByRef state As Integer) As Boolean

Parameter

tokenInfo
TokenInfo

[in, out] Die TokenInfo-Struktur, die gefüllt werden soll.

state
Int32

[in, out] Der aktuelle Zustandswert des Scanners.

Gibt zurück

Boolean

Gibt true zurück, wenn ein Token von der aktuellen Zeile analysiert wurde und Informationen zurückgegeben wurde; andernfalls gibt false zurück, dass sich keine weiteren Token in der aktuellen Zeile befinden.

Beispiele

Dies ist ein Beispiel für die Art und Weise, wie eine Farbgebung diese Methode verwenden könnte.

using Microsoft.VisualStudio.TextManager.Interop;  
using Microsoft.VisualStudio.Package;  

namespace MyLanguagePackage  
{  

    public class MyColorizer : IVsColorizer  
    {  
        IScanner scanner;  

        public int ColorizeLine(int line,  
                                int length,  
                                IntPtr ptr,  
                                int state,  
                                uint[] attrs)  
        {  
            int linepos = 0;  
            if (this.scanner != null)  
            {  
                try  
                {  
                    string text = Marshal.PtrToStringUni(ptr, length);  

                    this.scanner.SetSource(text, 0);  

                    TokenInfo tokenInfo = new TokenInfo();  

                    while (this.scanner.ScanTokenAndProvideInfoAboutIt(tokenInfo, ref state))  
                    {  
                        // Do something with tokenInfo  
                    }  
                }  
                catch (Exception)  
                {  
                    // Catch and ignore exceptions  
                }  
            }  
            return state;  
        }  
    }  
}  

Hinweise

Ruft die- SetSource Methode auf, um die Zeile festzulegen, die analysiert werden soll. Anschließend wird die- ScanTokenAndProvideInfoAboutIt Methode in der Regel wiederholt aufgerufen, bis alle Token abgerufen werden.

Gilt für