// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under MIT X11 license (for details please see \doc\license.txt)
using System;
namespace ICSharpCode.NRefactory.CSharp.Resolver
{
///
/// Allows controlling which nodes are resolved by the resolve visitor.
///
///
public interface IResolveVisitorNavigator
{
ResolveVisitorNavigationMode Scan(AstNode node);
}
///
/// Represents the operation mode of the resolve visitor.
///
///
public enum ResolveVisitorNavigationMode
{
///
/// Scan into the children of the current node, without resolving the current node.
///
Scan,
///
/// Skip the current node - do not scan into it; do not resolve it.
///
Skip,
///
/// Resolve the current node; but only scan subnodes which are not required for resolving the current node.
///
Resolve,
///
/// Resolves all nodes in the current subtree.
///
ResolveAll
}
}