bool IsField(string identifier)
 {
     if (currentTypeDeclaration == null)             // e.g. in unit tests
     {
         return(false);
     }
     foreach (INode node in currentTypeDeclaration.Children)
     {
         if (node is FieldDeclaration)
         {
             FieldDeclaration fd = (FieldDeclaration)node;
             if (fd.GetVariableDeclaration(identifier) != null)
             {
                 return(true);
             }
         }
     }
     //field detection for fields\props inherited from base classes
     if (currentTypeDeclaration.BaseTypes.Count > 0)
     {
         return(IsField(currentTypeDeclaration.BaseTypes[0].ToString(), identifier));
     }
     return(false);
 }