gen/com/intellij/idea/plugin/hybris/impex/ImpexParser.java (1,328 lines of code) (raw):
/*
* ----------------------------------------------------------------
* --- WARNING: THIS FILE IS GENERATED AND WILL BE OVERWRITTEN! ---
* ----------------------------------------------------------------
*
* This file is part of "SAP Commerce Developers Toolset" plugin for IntelliJ IDEA.
* Copyright (C) 2019 EPAM Systems <hybrisideaplugin@epam.com> and contributors
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.intellij.idea.plugin.hybris.impex;
import com.intellij.lang.PsiBuilder;
import com.intellij.lang.PsiBuilder.Marker;
import static com.intellij.idea.plugin.hybris.impex.psi.ImpexTypes.*;
import static com.intellij.idea.plugin.hybris.impex.utils.ImpexParserUtils.*;
import com.intellij.psi.tree.IElementType;
import com.intellij.lang.ASTNode;
import com.intellij.psi.tree.TokenSet;
import com.intellij.lang.PsiParser;
import com.intellij.lang.LightPsiParser;
@SuppressWarnings({"SimplifiableIfStatement", "UnusedAssignment"})
public class ImpexParser implements PsiParser, LightPsiParser {
public ASTNode parse(IElementType t, PsiBuilder b) {
parseLight(t, b);
return b.getTreeBuilt();
}
public void parseLight(IElementType t, PsiBuilder b) {
boolean r;
b = adapt_builder_(t, b, this, EXTENDS_SETS_);
Marker m = enter_section_(b, 0, _COLLAPSE_, null);
r = parse_root_(t, b);
exit_section_(b, 0, m, t, r, true, TRUE_CONDITION);
}
protected boolean parse_root_(IElementType t, PsiBuilder b) {
return parse_root_(t, b, 0);
}
static boolean parse_root_(IElementType t, PsiBuilder b, int l) {
return impexFile(b, l + 1);
}
public static final TokenSet[] EXTENDS_SETS_ = new TokenSet[] {
create_token_set_(PARAMETERS, SUB_PARAMETERS),
};
/* ********************************************************** */
// (ATTRIBUTE_NAME | string)+
public static boolean any_attribute_name(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_attribute_name")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, ANY_ATTRIBUTE_NAME, "<any attribute name>");
r = any_attribute_name_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!any_attribute_name_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "any_attribute_name", c)) break;
}
exit_section_(b, l, m, r, false, null);
return r;
}
// ATTRIBUTE_NAME | string
private static boolean any_attribute_name_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_attribute_name_0")) return false;
boolean r;
r = consumeToken(b, ATTRIBUTE_NAME);
if (!r) r = string(b, l + 1);
return r;
}
/* ********************************************************** */
// (
// ATTRIBUTE_VALUE
// | DIGIT
// | BOOLEAN
// | string
// | macro_usage_dec
// )+
public static boolean any_attribute_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_attribute_value")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, ANY_ATTRIBUTE_VALUE, "<any attribute value>");
r = any_attribute_value_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!any_attribute_value_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "any_attribute_value", c)) break;
}
exit_section_(b, l, m, r, false, null);
return r;
}
// ATTRIBUTE_VALUE
// | DIGIT
// | BOOLEAN
// | string
// | macro_usage_dec
private static boolean any_attribute_value_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_attribute_value_0")) return false;
boolean r;
r = consumeToken(b, ATTRIBUTE_VALUE);
if (!r) r = consumeToken(b, DIGIT);
if (!r) r = consumeToken(b, BOOLEAN);
if (!r) r = string(b, l + 1);
if (!r) r = macro_usage_dec(b, l + 1);
return r;
}
/* ********************************************************** */
// HEADER_MODE_INSERT | HEADER_MODE_UPDATE | HEADER_MODE_INSERT_UPDATE | HEADER_MODE_REMOVE
public static boolean any_header_mode(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_header_mode")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, ANY_HEADER_MODE, "<any header mode>");
r = consumeToken(b, HEADER_MODE_INSERT);
if (!r) r = consumeToken(b, HEADER_MODE_UPDATE);
if (!r) r = consumeToken(b, HEADER_MODE_INSERT_UPDATE);
if (!r) r = consumeToken(b, HEADER_MODE_REMOVE);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// HEADER_PARAMETER_NAME | HEADER_SPECIAL_PARAMETER_NAME | macro_usage_dec | document_id_dec | FUNCTION
public static boolean any_header_parameter_name(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "any_header_parameter_name")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, ANY_HEADER_PARAMETER_NAME, "<any header parameter name>");
r = consumeToken(b, HEADER_PARAMETER_NAME);
if (!r) r = consumeToken(b, HEADER_SPECIAL_PARAMETER_NAME);
if (!r) r = macro_usage_dec(b, l + 1);
if (!r) r = document_id_dec(b, l + 1);
if (!r) r = consumeToken(b, FUNCTION);
exit_section_(b, l, m, r, false, ImpexParser::recover_parameter_name);
return r;
}
/* ********************************************************** */
// any_attribute_name ASSIGN_VALUE any_attribute_value
public static boolean attribute(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "attribute")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, ATTRIBUTE, "<attribute>");
r = any_attribute_name(b, l + 1);
p = r; // pin = 1
r = r && report_error_(b, consumeToken(b, ASSIGN_VALUE));
r = p && any_attribute_value(b, l + 1) && r;
exit_section_(b, l, m, r, p, null);
return r || p;
}
/* ********************************************************** */
// script_body
public static boolean beanshell_script_body(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "beanshell_script_body")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, BEANSHELL_SCRIPT_BODY, "<beanshell script body>");
r = script_body(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// LINE_COMMENT
public static boolean comment(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "comment")) return false;
if (!nextTokenIs(b, LINE_COMMENT)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, LINE_COMMENT);
exit_section_(b, m, COMMENT, r);
return r;
}
/* ********************************************************** */
// DOCUMENT_ID
public static boolean document_id_dec(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "document_id_dec")) return false;
if (!nextTokenIs(b, DOCUMENT_ID)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, DOCUMENT_ID);
exit_section_(b, m, DOCUMENT_ID_DEC, r);
return r;
}
/* ********************************************************** */
// DOCUMENT_ID
public static boolean document_id_usage(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "document_id_usage")) return false;
if (!nextTokenIs(b, DOCUMENT_ID)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, DOCUMENT_ID);
exit_section_(b, m, DOCUMENT_ID_USAGE, r);
return r;
}
/* ********************************************************** */
// any_header_parameter_name parameters? modifiers* parameters?
public static boolean full_header_parameter(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_parameter")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, FULL_HEADER_PARAMETER, "<full header parameter>");
r = any_header_parameter_name(b, l + 1);
p = r; // pin = 1
r = r && report_error_(b, full_header_parameter_1(b, l + 1));
r = p && report_error_(b, full_header_parameter_2(b, l + 1)) && r;
r = p && full_header_parameter_3(b, l + 1) && r;
exit_section_(b, l, m, r, p, ImpexParser::not_line_break_or_parameters_separator);
return r || p;
}
// parameters?
private static boolean full_header_parameter_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_parameter_1")) return false;
parameters(b, l + 1);
return true;
}
// modifiers*
private static boolean full_header_parameter_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_parameter_2")) return false;
while (true) {
int c = current_position_(b);
if (!modifiers(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "full_header_parameter_2", c)) break;
}
return true;
}
// parameters?
private static boolean full_header_parameter_3(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_parameter_3")) return false;
parameters(b, l + 1);
return true;
}
/* ********************************************************** */
// header_type_name modifiers?
public static boolean full_header_type(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_type")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, FULL_HEADER_TYPE, "<full header type>");
r = header_type_name(b, l + 1);
r = r && full_header_type_1(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::not_line_break_or_parameters_separator);
return r;
}
// modifiers?
private static boolean full_header_type_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "full_header_type_1")) return false;
modifiers(b, l + 1);
return true;
}
/* ********************************************************** */
// script_body
public static boolean groovy_script_body(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "groovy_script_body")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, GROOVY_SCRIPT_BODY, "<groovy script body>");
r = script_body(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// any_header_mode full_header_type ((PARAMETERS_SEPARATOR MULTILINE_SEPARATOR? full_header_parameter) | PARAMETERS_SEPARATOR)*
public static boolean header_line(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_line")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, HEADER_LINE, "<header line>");
r = any_header_mode(b, l + 1);
p = r; // pin = 1
r = r && report_error_(b, full_header_type(b, l + 1));
r = p && header_line_2(b, l + 1) && r;
exit_section_(b, l, m, r, p, null);
return r || p;
}
// ((PARAMETERS_SEPARATOR MULTILINE_SEPARATOR? full_header_parameter) | PARAMETERS_SEPARATOR)*
private static boolean header_line_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_line_2")) return false;
while (true) {
int c = current_position_(b);
if (!header_line_2_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "header_line_2", c)) break;
}
return true;
}
// (PARAMETERS_SEPARATOR MULTILINE_SEPARATOR? full_header_parameter) | PARAMETERS_SEPARATOR
private static boolean header_line_2_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_line_2_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = header_line_2_0_0(b, l + 1);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
exit_section_(b, m, null, r);
return r;
}
// PARAMETERS_SEPARATOR MULTILINE_SEPARATOR? full_header_parameter
private static boolean header_line_2_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_line_2_0_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, PARAMETERS_SEPARATOR);
r = r && header_line_2_0_0_1(b, l + 1);
r = r && full_header_parameter(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// MULTILINE_SEPARATOR?
private static boolean header_line_2_0_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_line_2_0_0_1")) return false;
consumeToken(b, MULTILINE_SEPARATOR);
return true;
}
/* ********************************************************** */
// HEADER_TYPE
public static boolean header_type_name(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_type_name")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, HEADER_TYPE_NAME, "<header type name>");
r = consumeToken(b, HEADER_TYPE);
exit_section_(b, l, m, r, false, ImpexParser::recover_header_type);
return r;
}
/* ********************************************************** */
// root*
static boolean impexFile(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "impexFile")) return false;
while (true) {
int c = current_position_(b);
if (!root(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "impexFile", c)) break;
}
return true;
}
/* ********************************************************** */
// script_body
public static boolean javascript_script_body(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "javascript_script_body")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, JAVASCRIPT_SCRIPT_BODY, "<javascript script body>");
r = script_body(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// macro_name_dec ASSIGN_VALUE (
// macro_value_dec
// | string
// | HEADER_SPECIAL_PARAMETER_NAME
// | macro_usage_dec
// | LEFT_ROUND_BRACKET
// | RIGHT_ROUND_BRACKET
// | LEFT_SQUARE_BRACKET
// | RIGHT_SQUARE_BRACKET
// | ASSIGN_VALUE
// | DIGIT
// | BOOLEAN
// | FIELD_VALUE_IGNORE
// | FIELD_VALUE_NULL
// | COMMA
// | HEADER_MODE_INSERT
// | HEADER_MODE_UPDATE
// | HEADER_MODE_INSERT_UPDATE
// | HEADER_MODE_REMOVE
// )*
public static boolean macro_declaration(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_declaration")) return false;
if (!nextTokenIs(b, MACRO_NAME_DECLARATION)) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, MACRO_DECLARATION, null);
r = macro_name_dec(b, l + 1);
r = r && consumeToken(b, ASSIGN_VALUE);
p = r; // pin = 2
r = r && macro_declaration_2(b, l + 1);
exit_section_(b, l, m, r, p, null);
return r || p;
}
// (
// macro_value_dec
// | string
// | HEADER_SPECIAL_PARAMETER_NAME
// | macro_usage_dec
// | LEFT_ROUND_BRACKET
// | RIGHT_ROUND_BRACKET
// | LEFT_SQUARE_BRACKET
// | RIGHT_SQUARE_BRACKET
// | ASSIGN_VALUE
// | DIGIT
// | BOOLEAN
// | FIELD_VALUE_IGNORE
// | FIELD_VALUE_NULL
// | COMMA
// | HEADER_MODE_INSERT
// | HEADER_MODE_UPDATE
// | HEADER_MODE_INSERT_UPDATE
// | HEADER_MODE_REMOVE
// )*
private static boolean macro_declaration_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_declaration_2")) return false;
while (true) {
int c = current_position_(b);
if (!macro_declaration_2_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "macro_declaration_2", c)) break;
}
return true;
}
// macro_value_dec
// | string
// | HEADER_SPECIAL_PARAMETER_NAME
// | macro_usage_dec
// | LEFT_ROUND_BRACKET
// | RIGHT_ROUND_BRACKET
// | LEFT_SQUARE_BRACKET
// | RIGHT_SQUARE_BRACKET
// | ASSIGN_VALUE
// | DIGIT
// | BOOLEAN
// | FIELD_VALUE_IGNORE
// | FIELD_VALUE_NULL
// | COMMA
// | HEADER_MODE_INSERT
// | HEADER_MODE_UPDATE
// | HEADER_MODE_INSERT_UPDATE
// | HEADER_MODE_REMOVE
private static boolean macro_declaration_2_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_declaration_2_0")) return false;
boolean r;
r = macro_value_dec(b, l + 1);
if (!r) r = string(b, l + 1);
if (!r) r = consumeToken(b, HEADER_SPECIAL_PARAMETER_NAME);
if (!r) r = macro_usage_dec(b, l + 1);
if (!r) r = consumeToken(b, LEFT_ROUND_BRACKET);
if (!r) r = consumeToken(b, RIGHT_ROUND_BRACKET);
if (!r) r = consumeToken(b, LEFT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, RIGHT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, ASSIGN_VALUE);
if (!r) r = consumeToken(b, DIGIT);
if (!r) r = consumeToken(b, BOOLEAN);
if (!r) r = consumeToken(b, FIELD_VALUE_IGNORE);
if (!r) r = consumeToken(b, FIELD_VALUE_NULL);
if (!r) r = consumeToken(b, COMMA);
if (!r) r = consumeToken(b, HEADER_MODE_INSERT);
if (!r) r = consumeToken(b, HEADER_MODE_UPDATE);
if (!r) r = consumeToken(b, HEADER_MODE_INSERT_UPDATE);
if (!r) r = consumeToken(b, HEADER_MODE_REMOVE);
return r;
}
/* ********************************************************** */
// MACRO_NAME_DECLARATION
public static boolean macro_name_dec(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_name_dec")) return false;
if (!nextTokenIs(b, MACRO_NAME_DECLARATION)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, MACRO_NAME_DECLARATION);
exit_section_(b, m, MACRO_NAME_DEC, r);
return r;
}
/* ********************************************************** */
// MACRO_USAGE
public static boolean macro_usage_dec(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_usage_dec")) return false;
if (!nextTokenIs(b, MACRO_USAGE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, MACRO_USAGE);
exit_section_(b, m, MACRO_USAGE_DEC, r);
return r;
}
/* ********************************************************** */
// MACRO_VALUE
public static boolean macro_value_dec(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "macro_value_dec")) return false;
if (!nextTokenIs(b, MACRO_VALUE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, MACRO_VALUE);
exit_section_(b, m, MACRO_VALUE_DEC, r);
return r;
}
/* ********************************************************** */
// LEFT_SQUARE_BRACKET ((attribute | macro_usage_dec) (ATTRIBUTE_SEPARATOR (attribute | macro_usage_dec))* ) RIGHT_SQUARE_BRACKET
public static boolean modifiers(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, MODIFIERS, "<modifiers>");
r = consumeToken(b, LEFT_SQUARE_BRACKET);
p = r; // pin = 1
r = r && report_error_(b, modifiers_1(b, l + 1));
r = p && consumeToken(b, RIGHT_SQUARE_BRACKET) && r;
exit_section_(b, l, m, r, p, ImpexParser::recover_modifiers);
return r || p;
}
// (attribute | macro_usage_dec) (ATTRIBUTE_SEPARATOR (attribute | macro_usage_dec))*
private static boolean modifiers_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = modifiers_1_0(b, l + 1);
r = r && modifiers_1_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// attribute | macro_usage_dec
private static boolean modifiers_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers_1_0")) return false;
boolean r;
r = attribute(b, l + 1);
if (!r) r = macro_usage_dec(b, l + 1);
return r;
}
// (ATTRIBUTE_SEPARATOR (attribute | macro_usage_dec))*
private static boolean modifiers_1_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers_1_1")) return false;
while (true) {
int c = current_position_(b);
if (!modifiers_1_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "modifiers_1_1", c)) break;
}
return true;
}
// ATTRIBUTE_SEPARATOR (attribute | macro_usage_dec)
private static boolean modifiers_1_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers_1_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, ATTRIBUTE_SEPARATOR);
r = r && modifiers_1_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// attribute | macro_usage_dec
private static boolean modifiers_1_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "modifiers_1_1_0_1")) return false;
boolean r;
r = attribute(b, l + 1);
if (!r) r = macro_usage_dec(b, l + 1);
return r;
}
/* ********************************************************** */
// !(CRLF)
static boolean not_line_break(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_line_break")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !consumeToken(b, CRLF);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// !(CRLF | PARAMETERS_SEPARATOR | MULTILINE_SEPARATOR)
static boolean not_line_break_or_parameters_separator(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_line_break_or_parameters_separator")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !not_line_break_or_parameters_separator_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF | PARAMETERS_SEPARATOR | MULTILINE_SEPARATOR
private static boolean not_line_break_or_parameters_separator_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_line_break_or_parameters_separator_0")) return false;
boolean r;
r = consumeToken(b, CRLF);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
if (!r) r = consumeToken(b, MULTILINE_SEPARATOR);
return r;
}
/* ********************************************************** */
// (HEADER_PARAMETER_NAME | macro_usage_dec | document_id_usage | FUNCTION) (sub_parameters | ((DOT)? macro_usage_dec))? modifiers*
public static boolean parameter(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, PARAMETER, "<parameter>");
r = parameter_0(b, l + 1);
p = r; // pin = 1
r = r && report_error_(b, parameter_1(b, l + 1));
r = p && parameter_2(b, l + 1) && r;
exit_section_(b, l, m, r, p, null);
return r || p;
}
// HEADER_PARAMETER_NAME | macro_usage_dec | document_id_usage | FUNCTION
private static boolean parameter_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_0")) return false;
boolean r;
r = consumeToken(b, HEADER_PARAMETER_NAME);
if (!r) r = macro_usage_dec(b, l + 1);
if (!r) r = document_id_usage(b, l + 1);
if (!r) r = consumeToken(b, FUNCTION);
return r;
}
// (sub_parameters | ((DOT)? macro_usage_dec))?
private static boolean parameter_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_1")) return false;
parameter_1_0(b, l + 1);
return true;
}
// sub_parameters | ((DOT)? macro_usage_dec)
private static boolean parameter_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = sub_parameters(b, l + 1);
if (!r) r = parameter_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// (DOT)? macro_usage_dec
private static boolean parameter_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_1_0_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = parameter_1_0_1_0(b, l + 1);
r = r && macro_usage_dec(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// (DOT)?
private static boolean parameter_1_0_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_1_0_1_0")) return false;
consumeToken(b, DOT);
return true;
}
// modifiers*
private static boolean parameter_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameter_2")) return false;
while (true) {
int c = current_position_(b);
if (!modifiers(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "parameter_2", c)) break;
}
return true;
}
/* ********************************************************** */
// LEFT_ROUND_BRACKET (parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*)? RIGHT_ROUND_BRACKET
public static boolean parameters(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, PARAMETERS, "<parameters>");
r = consumeToken(b, LEFT_ROUND_BRACKET);
p = r; // pin = 1
r = r && report_error_(b, parameters_1(b, l + 1));
r = p && consumeToken(b, RIGHT_ROUND_BRACKET) && r;
exit_section_(b, l, m, r, p, ImpexParser::recover_parameters);
return r || p;
}
// (parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*)?
private static boolean parameters_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters_1")) return false;
parameters_1_0(b, l + 1);
return true;
}
// parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*
private static boolean parameters_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = parameter(b, l + 1);
r = r && parameters_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// ((COMMA | ALTERNATIVE_PATTERN) parameter)*
private static boolean parameters_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters_1_0_1")) return false;
while (true) {
int c = current_position_(b);
if (!parameters_1_0_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "parameters_1_0_1", c)) break;
}
return true;
}
// (COMMA | ALTERNATIVE_PATTERN) parameter
private static boolean parameters_1_0_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters_1_0_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = parameters_1_0_1_0_0(b, l + 1);
r = r && parameter(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// COMMA | ALTERNATIVE_PATTERN
private static boolean parameters_1_0_1_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "parameters_1_0_1_0_0")) return false;
boolean r;
r = consumeToken(b, COMMA);
if (!r) r = consumeToken(b, ALTERNATIVE_PATTERN);
return r;
}
/* ********************************************************** */
// !(LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR | CRLF)
static boolean recover_header_type(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_header_type")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !recover_header_type_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR | CRLF
private static boolean recover_header_type_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_header_type_0")) return false;
boolean r;
r = consumeToken(b, LEFT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
if (!r) r = consumeToken(b, CRLF);
return r;
}
/* ********************************************************** */
// !(ALTERNATIVE_PATTERN | COMMA | CRLF | LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR | RIGHT_ROUND_BRACKET | LEFT_ROUND_BRACKET)
static boolean recover_modifiers(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_modifiers")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !recover_modifiers_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// ALTERNATIVE_PATTERN | COMMA | CRLF | LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR | RIGHT_ROUND_BRACKET | LEFT_ROUND_BRACKET
private static boolean recover_modifiers_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_modifiers_0")) return false;
boolean r;
r = consumeToken(b, ALTERNATIVE_PATTERN);
if (!r) r = consumeToken(b, COMMA);
if (!r) r = consumeToken(b, CRLF);
if (!r) r = consumeToken(b, LEFT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
if (!r) r = consumeToken(b, RIGHT_ROUND_BRACKET);
if (!r) r = consumeToken(b, LEFT_ROUND_BRACKET);
return r;
}
/* ********************************************************** */
// !(LEFT_SQUARE_BRACKET | LEFT_ROUND_BRACKET | PARAMETERS_SEPARATOR | CRLF)
static boolean recover_parameter_name(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_parameter_name")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !recover_parameter_name_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// LEFT_SQUARE_BRACKET | LEFT_ROUND_BRACKET | PARAMETERS_SEPARATOR | CRLF
private static boolean recover_parameter_name_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_parameter_name_0")) return false;
boolean r;
r = consumeToken(b, LEFT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, LEFT_ROUND_BRACKET);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
if (!r) r = consumeToken(b, CRLF);
return r;
}
/* ********************************************************** */
// !(CRLF | LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR)
static boolean recover_parameters(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_parameters")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !recover_parameters_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF | LEFT_SQUARE_BRACKET | PARAMETERS_SEPARATOR
private static boolean recover_parameters_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_parameters_0")) return false;
boolean r;
r = consumeToken(b, CRLF);
if (!r) r = consumeToken(b, LEFT_SQUARE_BRACKET);
if (!r) r = consumeToken(b, PARAMETERS_SEPARATOR);
return r;
}
/* ********************************************************** */
// !(
// CRLF
// | user_rights_start
// | HEADER_MODE_INSERT
// | HEADER_MODE_INSERT_UPDATE
// | HEADER_MODE_REMOVE
// | HEADER_MODE_UPDATE
// | sub_type_name
// | FIELD_VALUE_SEPARATOR
// | LINE_COMMENT
// | macro_name_dec
// | BEAN_SHELL_MARKER
// | GROOVY_MARKER
// | JAVASCRIPT_MARKER
// | DOUBLE_STRING
// | SINGLE_STRING
// | MACRO_USAGE
// )
static boolean recover_root(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_root")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !recover_root_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF
// | user_rights_start
// | HEADER_MODE_INSERT
// | HEADER_MODE_INSERT_UPDATE
// | HEADER_MODE_REMOVE
// | HEADER_MODE_UPDATE
// | sub_type_name
// | FIELD_VALUE_SEPARATOR
// | LINE_COMMENT
// | macro_name_dec
// | BEAN_SHELL_MARKER
// | GROOVY_MARKER
// | JAVASCRIPT_MARKER
// | DOUBLE_STRING
// | SINGLE_STRING
// | MACRO_USAGE
private static boolean recover_root_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "recover_root_0")) return false;
boolean r;
r = consumeToken(b, CRLF);
if (!r) r = user_rights_start(b, l + 1);
if (!r) r = consumeToken(b, HEADER_MODE_INSERT);
if (!r) r = consumeToken(b, HEADER_MODE_INSERT_UPDATE);
if (!r) r = consumeToken(b, HEADER_MODE_REMOVE);
if (!r) r = consumeToken(b, HEADER_MODE_UPDATE);
if (!r) r = sub_type_name(b, l + 1);
if (!r) r = consumeToken(b, FIELD_VALUE_SEPARATOR);
if (!r) r = consumeToken(b, LINE_COMMENT);
if (!r) r = macro_name_dec(b, l + 1);
if (!r) r = consumeToken(b, BEAN_SHELL_MARKER);
if (!r) r = consumeToken(b, GROOVY_MARKER);
if (!r) r = consumeToken(b, JAVASCRIPT_MARKER);
if (!r) r = consumeToken(b, DOUBLE_STRING);
if (!r) r = consumeToken(b, SINGLE_STRING);
if (!r) r = consumeToken(b, MACRO_USAGE);
return r;
}
/* ********************************************************** */
// CRLF | ( !<<eof>> root_group (CRLF | <<eof>> ))
static boolean root(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_);
r = consumeToken(b, CRLF);
if (!r) r = root_1(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::recover_root);
return r;
}
// !<<eof>> root_group (CRLF | <<eof>> )
private static boolean root_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = root_1_0(b, l + 1);
r = r && root_group(b, l + 1);
r = r && root_1_2(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// !<<eof>>
private static boolean root_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_1_0")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !eof(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF | <<eof>>
private static boolean root_1_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_1_2")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, CRLF);
if (!r) r = eof(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// user_rights
// | root_macro_usage
// | header_line
// | value_line
// | script
// | comment
// | (string (';')?)
// | macro_declaration
static boolean root_group(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_group")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_);
r = user_rights(b, l + 1);
if (!r) r = root_macro_usage(b, l + 1);
if (!r) r = header_line(b, l + 1);
if (!r) r = value_line(b, l + 1);
if (!r) r = script(b, l + 1);
if (!r) r = comment(b, l + 1);
if (!r) r = root_group_6(b, l + 1);
if (!r) r = macro_declaration(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::not_line_break);
return r;
}
// string (';')?
private static boolean root_group_6(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_group_6")) return false;
boolean r;
Marker m = enter_section_(b);
r = string(b, l + 1);
r = r && root_group_6_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// (';')?
private static boolean root_group_6_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_group_6_1")) return false;
root_group_6_1_0(b, l + 1);
return true;
}
// (';')
private static boolean root_group_6_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_group_6_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, ";");
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// MACRO_USAGE FIELD_VALUE_SEPARATOR*
public static boolean root_macro_usage(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_macro_usage")) return false;
if (!nextTokenIs(b, MACRO_USAGE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, MACRO_USAGE);
r = r && root_macro_usage_1(b, l + 1);
exit_section_(b, m, ROOT_MACRO_USAGE, r);
return r;
}
// FIELD_VALUE_SEPARATOR*
private static boolean root_macro_usage_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_macro_usage_1")) return false;
while (true) {
int c = current_position_(b);
if (!consumeToken(b, FIELD_VALUE_SEPARATOR)) break;
if (!empty_element_parsed_guard_(b, "root_macro_usage_1", c)) break;
}
return true;
}
/* ********************************************************** */
// GROOVY_MARKER SCRIPT_ACTION? groovy_script_body
// | JAVASCRIPT_MARKER SCRIPT_ACTION? javascript_script_body
// | BEAN_SHELL_MARKER SCRIPT_ACTION? beanshell_script_body
public static boolean script(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, SCRIPT, "<script>");
r = script_0(b, l + 1);
if (!r) r = script_1(b, l + 1);
if (!r) r = script_2(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// GROOVY_MARKER SCRIPT_ACTION? groovy_script_body
private static boolean script_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, GROOVY_MARKER);
r = r && script_0_1(b, l + 1);
r = r && groovy_script_body(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// SCRIPT_ACTION?
private static boolean script_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_0_1")) return false;
consumeToken(b, SCRIPT_ACTION);
return true;
}
// JAVASCRIPT_MARKER SCRIPT_ACTION? javascript_script_body
private static boolean script_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, JAVASCRIPT_MARKER);
r = r && script_1_1(b, l + 1);
r = r && javascript_script_body(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// SCRIPT_ACTION?
private static boolean script_1_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_1_1")) return false;
consumeToken(b, SCRIPT_ACTION);
return true;
}
// BEAN_SHELL_MARKER SCRIPT_ACTION? beanshell_script_body
private static boolean script_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_2")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, BEAN_SHELL_MARKER);
r = r && script_2_1(b, l + 1);
r = r && beanshell_script_body(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// SCRIPT_ACTION?
private static boolean script_2_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_2_1")) return false;
consumeToken(b, SCRIPT_ACTION);
return true;
}
/* ********************************************************** */
// (SCRIPT_BODY_VALUE
// | MACRO_USAGE
// | SINGLE_STRING
// | DOUBLE_STRING
// )*
static boolean script_body(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_body")) return false;
while (true) {
int c = current_position_(b);
if (!script_body_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "script_body", c)) break;
}
return true;
}
// SCRIPT_BODY_VALUE
// | MACRO_USAGE
// | SINGLE_STRING
// | DOUBLE_STRING
private static boolean script_body_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "script_body_0")) return false;
boolean r;
r = consumeToken(b, SCRIPT_BODY_VALUE);
if (!r) r = consumeToken(b, MACRO_USAGE);
if (!r) r = consumeToken(b, SINGLE_STRING);
if (!r) r = consumeToken(b, DOUBLE_STRING);
return r;
}
/* ********************************************************** */
// SINGLE_STRING | DOUBLE_STRING
public static boolean string(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "string")) return false;
if (!nextTokenIs(b, "<string>", DOUBLE_STRING, SINGLE_STRING)) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, STRING, "<string>");
r = consumeToken(b, SINGLE_STRING);
if (!r) r = consumeToken(b, DOUBLE_STRING);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// LEFT_ROUND_BRACKET (parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*)? RIGHT_ROUND_BRACKET
public static boolean sub_parameters(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters")) return false;
if (!nextTokenIs(b, LEFT_ROUND_BRACKET)) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, SUB_PARAMETERS, null);
r = consumeToken(b, LEFT_ROUND_BRACKET);
p = r; // pin = 1
r = r && report_error_(b, sub_parameters_1(b, l + 1));
r = p && consumeToken(b, RIGHT_ROUND_BRACKET) && r;
exit_section_(b, l, m, r, p, null);
return r || p;
}
// (parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*)?
private static boolean sub_parameters_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters_1")) return false;
sub_parameters_1_0(b, l + 1);
return true;
}
// parameter ((COMMA | ALTERNATIVE_PATTERN) parameter)*
private static boolean sub_parameters_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = parameter(b, l + 1);
r = r && sub_parameters_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// ((COMMA | ALTERNATIVE_PATTERN) parameter)*
private static boolean sub_parameters_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters_1_0_1")) return false;
while (true) {
int c = current_position_(b);
if (!sub_parameters_1_0_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "sub_parameters_1_0_1", c)) break;
}
return true;
}
// (COMMA | ALTERNATIVE_PATTERN) parameter
private static boolean sub_parameters_1_0_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters_1_0_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = sub_parameters_1_0_1_0_0(b, l + 1);
r = r && parameter(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// COMMA | ALTERNATIVE_PATTERN
private static boolean sub_parameters_1_0_1_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_parameters_1_0_1_0_0")) return false;
boolean r;
r = consumeToken(b, COMMA);
if (!r) r = consumeToken(b, ALTERNATIVE_PATTERN);
return r;
}
/* ********************************************************** */
// VALUE_SUBTYPE
public static boolean sub_type_name(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "sub_type_name")) return false;
if (!nextTokenIs(b, VALUE_SUBTYPE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, VALUE_SUBTYPE);
exit_section_(b, m, SUB_TYPE_NAME, r);
return r;
}
/* ********************************************************** */
// user_rights_start (PARAMETERS_SEPARATOR)* CRLF+ user_rights_body user_rights_end
public static boolean user_rights(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS, "<user rights>");
r = user_rights_start(b, l + 1);
p = r; // pin = 1
r = r && report_error_(b, user_rights_1(b, l + 1));
r = p && report_error_(b, user_rights_2(b, l + 1)) && r;
r = p && report_error_(b, user_rights_body(b, l + 1)) && r;
r = p && user_rights_end(b, l + 1) && r;
exit_section_(b, l, m, r, p, ImpexParser::recover_root);
return r || p;
}
// (PARAMETERS_SEPARATOR)*
private static boolean user_rights_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_1")) return false;
while (true) {
int c = current_position_(b);
if (!consumeToken(b, PARAMETERS_SEPARATOR)) break;
if (!empty_element_parsed_guard_(b, "user_rights_1", c)) break;
}
return true;
}
// CRLF+
private static boolean user_rights_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_2")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, CRLF);
while (r) {
int c = current_position_(b);
if (!consumeToken(b, CRLF)) break;
if (!empty_element_parsed_guard_(b, "user_rights_2", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// FIELD_VALUE
public static boolean user_rights_attribute_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_attribute_value")) return false;
if (!nextTokenIs(b, FIELD_VALUE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, FIELD_VALUE);
exit_section_(b, m, USER_RIGHTS_ATTRIBUTE_VALUE, r);
return r;
}
/* ********************************************************** */
// (user_rights_header_line CRLF+) (user_rights_value_line CRLF+)*
static boolean user_rights_body(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_);
r = user_rights_body_0(b, l + 1);
r = r && user_rights_body_1(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::user_rights_body_recover);
return r;
}
// user_rights_header_line CRLF+
private static boolean user_rights_body_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = user_rights_header_line(b, l + 1);
r = r && user_rights_body_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// CRLF+
private static boolean user_rights_body_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_0_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, CRLF);
while (r) {
int c = current_position_(b);
if (!consumeToken(b, CRLF)) break;
if (!empty_element_parsed_guard_(b, "user_rights_body_0_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// (user_rights_value_line CRLF+)*
private static boolean user_rights_body_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_1")) return false;
while (true) {
int c = current_position_(b);
if (!user_rights_body_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "user_rights_body_1", c)) break;
}
return true;
}
// user_rights_value_line CRLF+
private static boolean user_rights_body_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = user_rights_value_line(b, l + 1);
r = r && user_rights_body_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// CRLF+
private static boolean user_rights_body_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_1_0_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, CRLF);
while (r) {
int c = current_position_(b);
if (!consumeToken(b, CRLF)) break;
if (!empty_element_parsed_guard_(b, "user_rights_body_1_0_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// !(user_rights_end)
static boolean user_rights_body_recover(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_recover")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !user_rights_body_recover_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// (user_rights_end)
private static boolean user_rights_body_recover_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_body_recover_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = user_rights_end(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// END_USERRIGHTS (PARAMETERS_SEPARATOR)*
public static boolean user_rights_end(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_end")) return false;
if (!nextTokenIs(b, END_USERRIGHTS)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, END_USERRIGHTS);
r = r && user_rights_end_1(b, l + 1);
exit_section_(b, m, USER_RIGHTS_END, r);
return r;
}
// (PARAMETERS_SEPARATOR)*
private static boolean user_rights_end_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_end_1")) return false;
while (true) {
int c = current_position_(b);
if (!consumeToken(b, PARAMETERS_SEPARATOR)) break;
if (!empty_element_parsed_guard_(b, "user_rights_end_1", c)) break;
}
return true;
}
/* ********************************************************** */
// user_rights_value
public static boolean user_rights_first_value_group(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_first_value_group")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_FIRST_VALUE_GROUP, "<user rights first value group>");
r = user_rights_value(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::user_rights_value_group_recover);
return r;
}
/* ********************************************************** */
// user_rights_header_parameter (PARAMETERS_SEPARATOR user_rights_header_parameter)*
public static boolean user_rights_header_line(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_header_line")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_HEADER_LINE, "<user rights header line>");
r = user_rights_header_parameter(b, l + 1);
p = r; // pin = 1
r = r && user_rights_header_line_1(b, l + 1);
exit_section_(b, l, m, r, p, ImpexParser::not_line_break);
return r || p;
}
// (PARAMETERS_SEPARATOR user_rights_header_parameter)*
private static boolean user_rights_header_line_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_header_line_1")) return false;
while (true) {
int c = current_position_(b);
if (!user_rights_header_line_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "user_rights_header_line_1", c)) break;
}
return true;
}
// PARAMETERS_SEPARATOR user_rights_header_parameter
private static boolean user_rights_header_line_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_header_line_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, PARAMETERS_SEPARATOR);
r = r && user_rights_header_parameter(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// TYPE
// | UID
// | MEMBEROFGROUPS
// | PASSWORD
// | TARGET
// | PERMISSION
public static boolean user_rights_header_parameter(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_header_parameter")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_HEADER_PARAMETER, "<user rights header parameter>");
r = consumeToken(b, TYPE);
if (!r) r = consumeToken(b, UID);
if (!r) r = consumeToken(b, MEMBEROFGROUPS);
if (!r) r = consumeToken(b, PASSWORD);
if (!r) r = consumeToken(b, TARGET);
if (!r) r = consumeToken(b, PERMISSION);
exit_section_(b, l, m, r, false, ImpexParser::not_line_break_or_parameters_separator);
return r;
}
/* ********************************************************** */
// FIELD_VALUE (COMMA FIELD_VALUE)+
public static boolean user_rights_multi_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_multi_value")) return false;
if (!nextTokenIs(b, FIELD_VALUE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, FIELD_VALUE);
r = r && user_rights_multi_value_1(b, l + 1);
exit_section_(b, m, USER_RIGHTS_MULTI_VALUE, r);
return r;
}
// (COMMA FIELD_VALUE)+
private static boolean user_rights_multi_value_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_multi_value_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = user_rights_multi_value_1_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!user_rights_multi_value_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "user_rights_multi_value_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// COMMA FIELD_VALUE
private static boolean user_rights_multi_value_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_multi_value_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeTokens(b, 0, COMMA, FIELD_VALUE);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// PERMISSION_DENIED | PERMISSION_ALLOWED | DOT
public static boolean user_rights_permission_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_permission_value")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_PERMISSION_VALUE, "<user rights permission value>");
r = consumeToken(b, PERMISSION_DENIED);
if (!r) r = consumeToken(b, PERMISSION_ALLOWED);
if (!r) r = consumeToken(b, DOT);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// FIELD_VALUE
public static boolean user_rights_single_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_single_value")) return false;
if (!nextTokenIs(b, FIELD_VALUE)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, FIELD_VALUE);
exit_section_(b, m, USER_RIGHTS_SINGLE_VALUE, r);
return r;
}
/* ********************************************************** */
// START_USERRIGHTS
public static boolean user_rights_start(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_start")) return false;
if (!nextTokenIs(b, START_USERRIGHTS)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, START_USERRIGHTS);
exit_section_(b, m, USER_RIGHTS_START, r);
return r;
}
/* ********************************************************** */
// user_rights_single_value DOT user_rights_attribute_value
static boolean user_rights_type_attribute_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_type_attribute_value")) return false;
if (!nextTokenIs(b, FIELD_VALUE)) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_);
r = user_rights_single_value(b, l + 1);
r = r && consumeToken(b, DOT);
p = r; // pin = 2
r = r && user_rights_attribute_value(b, l + 1);
exit_section_(b, l, m, r, p, null);
return r || p;
}
/* ********************************************************** */
// user_rights_type_attribute_value
// | user_rights_permission_value
// | user_rights_multi_value
// | user_rights_single_value
static boolean user_rights_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_);
r = user_rights_type_attribute_value(b, l + 1);
if (!r) r = user_rights_permission_value(b, l + 1);
if (!r) r = user_rights_multi_value(b, l + 1);
if (!r) r = user_rights_single_value(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::user_rights_value_recover);
return r;
}
/* ********************************************************** */
// FIELD_VALUE_SEPARATOR user_rights_value?
public static boolean user_rights_value_group(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_group")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_VALUE_GROUP, "<user rights value group>");
r = consumeToken(b, FIELD_VALUE_SEPARATOR);
p = r; // pin = 1
r = r && user_rights_value_group_1(b, l + 1);
exit_section_(b, l, m, r, p, ImpexParser::user_rights_value_group_recover);
return r || p;
}
// user_rights_value?
private static boolean user_rights_value_group_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_group_1")) return false;
user_rights_value(b, l + 1);
return true;
}
/* ********************************************************** */
// !(CRLF | FIELD_VALUE_SEPARATOR)
static boolean user_rights_value_group_recover(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_group_recover")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !user_rights_value_group_recover_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF | FIELD_VALUE_SEPARATOR
private static boolean user_rights_value_group_recover_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_group_recover_0")) return false;
boolean r;
r = consumeToken(b, CRLF);
if (!r) r = consumeToken(b, FIELD_VALUE_SEPARATOR);
return r;
}
/* ********************************************************** */
// user_rights_first_value_group? user_rights_value_group+
public static boolean user_rights_value_line(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_line")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, USER_RIGHTS_VALUE_LINE, "<user rights value line>");
r = user_rights_value_line_0(b, l + 1);
r = r && user_rights_value_line_1(b, l + 1);
exit_section_(b, l, m, r, false, ImpexParser::not_line_break);
return r;
}
// user_rights_first_value_group?
private static boolean user_rights_value_line_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_line_0")) return false;
user_rights_first_value_group(b, l + 1);
return true;
}
// user_rights_value_group+
private static boolean user_rights_value_line_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_line_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = user_rights_value_group(b, l + 1);
while (r) {
int c = current_position_(b);
if (!user_rights_value_group(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "user_rights_value_line_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// !(CRLF | FIELD_VALUE_SEPARATOR)
static boolean user_rights_value_recover(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_recover")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !user_rights_value_recover_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// CRLF | FIELD_VALUE_SEPARATOR
private static boolean user_rights_value_recover_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "user_rights_value_recover_0")) return false;
boolean r;
r = consumeToken(b, CRLF);
if (!r) r = consumeToken(b, FIELD_VALUE_SEPARATOR);
return r;
}
/* ********************************************************** */
// (MULTILINE_SEPARATOR? value_dec)+
// | (FIELD_VALUE_IGNORE | FIELD_VALUE_NULL)
public static boolean value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, VALUE, "<value>");
r = value_0(b, l + 1);
if (!r) r = value_1(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// (MULTILINE_SEPARATOR? value_dec)+
private static boolean value_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = value_0_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!value_0_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "value_0", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// MULTILINE_SEPARATOR? value_dec
private static boolean value_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_0_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = value_0_0_0(b, l + 1);
r = r && value_dec(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// MULTILINE_SEPARATOR?
private static boolean value_0_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_0_0_0")) return false;
consumeToken(b, MULTILINE_SEPARATOR);
return true;
}
// FIELD_VALUE_IGNORE | FIELD_VALUE_NULL
private static boolean value_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_1")) return false;
boolean r;
r = consumeToken(b, FIELD_VALUE_IGNORE);
if (!r) r = consumeToken(b, FIELD_VALUE_NULL);
return r;
}
/* ********************************************************** */
// FIELD_VALUE
// | FIELD_VALUE_PASSWORD_ENCODING_PREFIX
// | FIELD_VALUE_JAR_PREFIX
// | FIELD_VALUE_EXPLODED_JAR_PREFIX
// | FIELD_VALUE_FILE_PREFIX
// | FIELD_VALUE_ZIP_PREFIX
// | FIELD_VALUE_HTTP_PREFIX
// | FIELD_VALUE_SCRIPT_PREFIX
// // | FIELD_VALUE_URL
// | BOOLEAN
// | DIGIT
// | string
// | macro_usage_dec
// | FIELD_LIST_ITEM_SEPARATOR
// | DEFAULT_PATH_DELIMITER
// | DEFAULT_KEY_VALUE_DELIMITER
// | ALTERNATIVE_MAP_DELIMITER
// | COLLECTION_APPEND_PREFIX
// | COLLECTION_REMOVE_PREFIX
// | COLLECTION_MERGE_PREFIX
static boolean value_dec(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_dec")) return false;
boolean r;
r = consumeToken(b, FIELD_VALUE);
if (!r) r = consumeToken(b, FIELD_VALUE_PASSWORD_ENCODING_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_JAR_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_EXPLODED_JAR_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_FILE_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_ZIP_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_HTTP_PREFIX);
if (!r) r = consumeToken(b, FIELD_VALUE_SCRIPT_PREFIX);
if (!r) r = consumeToken(b, BOOLEAN);
if (!r) r = consumeToken(b, DIGIT);
if (!r) r = string(b, l + 1);
if (!r) r = macro_usage_dec(b, l + 1);
if (!r) r = consumeToken(b, FIELD_LIST_ITEM_SEPARATOR);
if (!r) r = consumeToken(b, DEFAULT_PATH_DELIMITER);
if (!r) r = consumeToken(b, DEFAULT_KEY_VALUE_DELIMITER);
if (!r) r = consumeToken(b, ALTERNATIVE_MAP_DELIMITER);
if (!r) r = consumeToken(b, COLLECTION_APPEND_PREFIX);
if (!r) r = consumeToken(b, COLLECTION_REMOVE_PREFIX);
if (!r) r = consumeToken(b, COLLECTION_MERGE_PREFIX);
return r;
}
/* ********************************************************** */
// FIELD_VALUE_SEPARATOR value? MULTILINE_SEPARATOR?
public static boolean value_group(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_group")) return false;
if (!nextTokenIs(b, FIELD_VALUE_SEPARATOR)) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, VALUE_GROUP, null);
r = consumeToken(b, FIELD_VALUE_SEPARATOR);
p = r; // pin = 1
r = r && report_error_(b, value_group_1(b, l + 1));
r = p && value_group_2(b, l + 1) && r;
exit_section_(b, l, m, r, p, null);
return r || p;
}
// value?
private static boolean value_group_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_group_1")) return false;
value(b, l + 1);
return true;
}
// MULTILINE_SEPARATOR?
private static boolean value_group_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_group_2")) return false;
consumeToken(b, MULTILINE_SEPARATOR);
return true;
}
/* ********************************************************** */
// (sub_type_name value_group*) | (value_group+)
public static boolean value_line(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_line")) return false;
if (!nextTokenIs(b, "<value line>", FIELD_VALUE_SEPARATOR, VALUE_SUBTYPE)) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, VALUE_LINE, "<value line>");
r = value_line_0(b, l + 1);
if (!r) r = value_line_1(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// sub_type_name value_group*
private static boolean value_line_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_line_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = sub_type_name(b, l + 1);
r = r && value_line_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// value_group*
private static boolean value_line_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_line_0_1")) return false;
while (true) {
int c = current_position_(b);
if (!value_group(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "value_line_0_1", c)) break;
}
return true;
}
// value_group+
private static boolean value_line_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "value_line_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = value_group(b, l + 1);
while (r) {
int c = current_position_(b);
if (!value_group(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "value_line_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
}