2 * Copyright (c) 2020 PANTHEON.tech, s.r.o. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 * Intermediate representation of a YANG file. This is an Abstract Syntax Tree equivalent to ParseTree we get from
10 * ANTLR, except it is immutable and has a denser in-memory representation due to it not containing any metadata which
11 * is not required for the purposes of statement inference.
14 * The main entry point into this package is {@link org.opendaylight.yangtools.yang.parser.rfc7950.ir.IRStatement},
15 * which represents a single YANG statement. Every YANG file is required to contain exactly one top-level statement,
16 * {@code module} or {@code submodule}, hence an IRStatement also represents the significant contents of a YANG file.
17 * One way of creating an IRStatement is through
18 * {@link org.opendaylight.yangtools.yang.parser.rfc7950.ir.AntlrSupport#createStatement(
19 * org.opendaylight.yangtools.yang.parser.antlr.YangStatementParser.FileContext)}.
21 package org.opendaylight.yangtools.yang.parser.rfc7950.ir;