blob: 7506384e0bd1e303401a445cbcfa6f60a833337c [file] [log] [blame] [edit]
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
* Use of this file is governed by the BSD 3-clause license that
* can be found in the LICENSE.txt file in the project root.
*/
using Antlr4.Runtime.Misc;
using Antlr4.Runtime.Tree;
namespace Antlr4.Runtime.Tree
{
/// <summary>
/// A tree that knows about an interval in a token stream
/// is some kind of syntax tree.
/// </summary>
/// <remarks>
/// A tree that knows about an interval in a token stream
/// is some kind of syntax tree. Subinterfaces distinguish
/// between parse trees and other kinds of syntax trees we might want to create.
/// </remarks>
public interface ISyntaxTree : ITree
{
/// <summary>
/// Return an
/// <see cref="Antlr4.Runtime.Misc.Interval"/>
/// indicating the index in the
/// <see cref="Antlr4.Runtime.ITokenStream"/>
/// of the first and last token associated with this
/// subtree. If this node is a leaf, then the interval represents a single
/// token.
/// <p>If source interval is unknown, this returns
/// <see cref="Antlr4.Runtime.Misc.Interval.Invalid"/>
/// .</p>
/// </summary>
Interval SourceInterval
{
get;
}
}
}