CodeModel2.IsValidID(String) Method

Definition

Returns whether a specified name is a valid programmatic identifier for the current language.

public:
 bool IsValidID(System::String ^ Name);
public:
 bool IsValidID(Platform::String ^ Name);
bool IsValidID(std::wstring const & Name);
[System.Runtime.InteropServices.DispId(16)]
public bool IsValidID (string Name);
[<System.Runtime.InteropServices.DispId(16)>]
abstract member IsValidID : string -> bool
Public Function IsValidID (Name As String) As Boolean

Parameters

Name
String

Required. The name of the identifier to check.

Returns

A Boolean value that is true when the identifier is valid; false when it is not, such as if it is a keyword.

Implements

Attributes

Examples

Sub IsValidIDExample(ByVal dte As DTE2)  

    ' Before running this example, open a project.  
    Dim idents() As String = {"Sub", "class", "void", "var"}  

    Dim name, results As String  
    Dim proj As Project  
    For Each proj In dte.Solution  
        results &= "In " & proj.Name & ":" & vbCrLf & vbCrLf  

        ' Validate the names in idents.  
        For Each name In idents  
            If proj.CodeModel.IsValidID(name) Then  
                results &= """" & name & """ is a valid identifier." _  
                    & vbCrLf  
            Else  
                results &= """" & name & _  
                    """ is not a valid identifier." & vbCrLf  
            End If  
        Next  

        results &= vbCrLf & vbCrLf  
    Next  

    MsgBox(results)  

End Sub  
public void IsValidIDExample(DTE2 dte)  
{  
    // Before running this example, open a project.  
    string[] idents = {"Sub", "class", "void", "var"};  

    string results = "";  
    foreach (Project proj in dte.Solution)  
    {  
        results += "In " + proj.Name + ":" + Environment.NewLine +   
            Environment.NewLine;  

        // Validate the names in idents.  
        foreach (string name in idents)  
        {  
            if (proj.CodeModel.IsValidID(name))  
                results += "\"" + name + "\" is a valid identifier." +   
                    Environment.NewLine;  
            else  
                results += "\"" + name +   
                    "\" is not a valid identifier." +   
                    Environment.NewLine;  
        }  

        results += Environment.NewLine + Environment.NewLine;  
    }  

    MessageBox.Show(results);  
}  

Remarks

Note

The values of code model elements such as classes, structs, functions, attributes, delegates, and so forth can be non-deterministic after making certain kinds of edits, meaning that their values cannot be relied upon to always remain the same.

Applies to