Add support for .editorconfig language

This commit is contained in:
Kirill
2018-08-30 15:50:28 +03:00
committed by Alexander.Kirsanov
parent 2de2414b1c
commit cd0bdd8852
635 changed files with 16756 additions and 18 deletions

26
.idea/jsonSchemas.xml generated Normal file
View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JsonSchemaMappingsProjectConfiguration">
<state>
<map>
<entry key="editorconfig">
<value>
<SchemaInfo>
<option name="name" value="editorconfig" />
<option name="relativePathToSchema" value="plugins\editorconfig\resources\schemas\descriptorFormatSchema.json" />
<option name="patterns">
<list>
<Item>
<option name="pattern" value="true" />
<option name="path" value="plugins/editorconfig/resources/schemas/editorconfig/*.json" />
<option name="mappingKind" value="Pattern" />
</Item>
</list>
</option>
</SchemaInfo>
</value>
</entry>
</map>
</state>
</component>
</project>

View File

@@ -126,5 +126,6 @@
<orderEntry type="library" scope="RUNTIME" name="commons-net" level="project" />
<orderEntry type="module" module-name="intellij.devkit.java.tests" scope="TEST" />
<orderEntry type="module" module-name="intellij.testng.rt.tests" scope="TEST" />
<orderEntry type="module" module-name="intellij.editorconfig" scope="RUNTIME" />
</component>
</module>
</module>

View File

@@ -1091,6 +1091,10 @@ editor.xcode.like.scrollbar.description=Enables auto-hideable Xcode-like editor
editor.config.stop.at.project.root=true
editor.config.stop.at.project.root.description=Stops searching for .editorconfig at project root (requires project reopening)
editor.config.breadcrumbs.support=false
editor.config.breadcrumbs.support.description=Enables breadcrumbs for .editorconfig files
editor.config.csharp.support=false
editor.config.csharp.support.description=Enables completion for .editorconfig options from Roslyn and R#
editor.bold.underline.height=2
editor.bold.underline.height.description=Underline height for EffectType.BOLD_LINE_UNDERSCORE

3
plugins/editorconfig/.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
# lexer generation utils
jflex-*.jar
idea-flex.skeleton

View File

@@ -1,6 +1,7 @@
The MIT License (MIT)
Copyright (c) 2013 Kevin Bell
Copyright (c) 2014-2018 JetBrains
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +19,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
THE SOFTWARE.

View File

@@ -0,0 +1,660 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
/* The following code was generated by JFlex 1.7.0 tweaked for IntelliJ platform */
package org.editorconfig.language.lexer;
import com.intellij.lexer.FlexLexer;
import com.intellij.psi.tree.IElementType;
import kotlin.NotImplementedError;
import java.io.IOException;
import java.io.Reader;
import static com.intellij.psi.TokenType.BAD_CHARACTER;
import static com.intellij.psi.TokenType.WHITE_SPACE;
import static org.editorconfig.language.psi.EditorConfigElementTypes.*;
/**
* This class is a scanner generated by
* <a href="http://www.jflex.de/">JFlex</a> 1.7.0
* from the specification file <tt>_EditorConfigLexer.flex</tt>
*/
public class _EditorConfigLexer implements FlexLexer {
/**
* This character denotes the end of file
*/
public static final int YYEOF = -1;
/** initial size of the lookahead buffer */
private static final int ZZ_BUFFERSIZE = 16384;
/** lexical states */
public static final int YYINITIAL = 0;
public static final int YYHEADER = 2;
public static final int YYCHARCLASS = 4;
/**
* ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
* ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l
* at the beginning of a line
* l is of the form l = 2*k, k a non negative integer
*/
private static final int ZZ_LEXSTATE[] = {
0, 0, 1, 1, 2, 2
};
/**
* Translates characters to character classes
* Chosen bits are [7, 7, 7]
* Total runtime size is 1928 bytes
*/
public static int ZZ_CMAP(int ch) {
return ZZ_CMAP_A[(ZZ_CMAP_Y[ZZ_CMAP_Z[ch >> 14] | ((ch >> 7) & 0x7f)] << 7) | (ch&0x7f)];
}
/* The ZZ_CMAP_Z table has 68 entries */
static final char ZZ_CMAP_Z[] = zzUnpackCMap(
"\1\0\103\200");
/* The ZZ_CMAP_Y table has 256 entries */
static final char ZZ_CMAP_Y[] = zzUnpackCMap(
"\1\0\1\1\53\2\1\3\22\2\1\4\37\2\1\3\237\2");
/* The ZZ_CMAP_A table has 640 entries */
static final char ZZ_CMAP_A[] = zzUnpackCMap(
"\11\0\1\1\1\3\2\5\1\4\22\0\1\1\1\14\1\0\1\2\6\0\1\16\1\0\1\13\1\0\1\10\13" +
"\0\1\11\1\2\1\0\1\12\1\0\1\17\33\0\1\20\1\7\1\15\35\0\1\21\1\0\1\6\7\0\1\5"+
"\32\0\1\1\337\0\1\1\177\0\13\1\35\0\2\5\5\0\1\1\57\0\1\1\40\0");
/**
* Translates DFA states to action switch labels.
*/
private static final int[] ZZ_ACTION = zzUnpackAction();
private static final String ZZ_ACTION_PACKED_0 =
"\3\0\1\1\1\2\1\3\1\4\1\5\1\6\1\7" +
"\1\10\1\11\1\12\1\13\2\14\1\15\1\16\1\17" +
"\1\20\1\21\1\22\1\14\1\23\1\24\1\0\1\12"+
"\1\25\1\22";
private static int[] zzUnpackAction() {
int[] result = new int[29];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
}
private static int zzUnpackAction(String packed, int offset, int[] result) {
int i = 0; /* index in packed string */
int j = offset; /* index in unpacked array */
int l = packed.length();
while (i < l) {
int count = packed.charAt(i++);
int value = packed.charAt(i++);
do {
result[j++] = value;
}
while (--count > 0);
}
return j;
}
/**
* Translates a state to a row index in the transition table
*/
private static final int[] ZZ_ROWMAP = zzUnpackRowMap();
private static final String ZZ_ROWMAP_PACKED_0 =
"\0\0\0\22\0\44\0\66\0\110\0\132\0\154\0\154" +
"\0\154\0\154\0\154\0\154\0\176\0\154\0\220\0\154" +
"\0\154\0\242\0\154\0\154\0\154\0\154\0\264\0\154"+
"\0\154\0\220\0\306\0\154\0\330";
private static int[] zzUnpackRowMap() {
int[] result = new int[29];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
}
private static int zzUnpackRowMap(String packed, int offset, int[] result) {
int i = 0; /* index in packed string */
int j = offset; /* index in unpacked array */
int l = packed.length();
while (i < l) {
int high = packed.charAt(i++) << 16;
result[j++] = high | packed.charAt(i++);
}
return j;
}
/**
* The transition table of the DFA
*/
private static final int[] ZZ_TRANS = zzUnpackTrans();
private static final String ZZ_TRANS_PACKED_0 =
"\1\4\1\5\1\6\3\5\2\4\1\7\1\10\1\11" +
"\1\12\1\4\1\13\2\4\1\14\1\4\1\15\1\5" +
"\1\6\3\5\1\16\1\17\1\15\1\20\1\11\1\12" +
"\1\20\1\21\1\22\1\23\1\24\1\25\1\26\1\5" +
"\1\6\3\5\1\20\1\27\1\26\1\20\1\11\1\12" +
"\1\30\1\31\4\20\1\4\5\0\2\4\4\0\1\4" +
"\1\0\2\4\1\0\1\4\1\0\1\5\1\0\3\5" +
"\14\0\3\6\3\0\14\6\22\0\1\15\6\0\1\32" +
"\1\15\11\0\4\15\1\33\15\15\16\0\1\34\3\0" +
"\4\26\1\35\15\26\1\15\2\0\1\15\3\0\1\32"+
"\1\15\14\0\1\26\16\0";
private static int[] zzUnpackTrans() {
int[] result = new int[234];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
}
private static int zzUnpackTrans(String packed, int offset, int[] result) {
int i = 0; /* index in packed string */
int j = offset; /* index in unpacked array */
int l = packed.length();
while (i < l) {
int count = packed.charAt(i++);
int value = packed.charAt(i++);
value--;
do {
result[j++] = value;
}
while (--count > 0);
}
return j;
}
/* error codes */
private static final int ZZ_UNKNOWN_ERROR = 0;
private static final int ZZ_NO_MATCH = 1;
private static final int ZZ_PUSHBACK_2BIG = 2;
/* error messages for the codes above */
private static final String[] ZZ_ERROR_MSG = {
"Unknown internal scanner error",
"Error: could not match input",
"Error: pushback value was too large"
};
/**
* ZZ_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
*/
private static final int[] ZZ_ATTRIBUTE = zzUnpackAttribute();
private static final String ZZ_ATTRIBUTE_PACKED_0 =
"\3\0\3\1\6\11\1\1\1\11\1\1\2\11\1\1"+
"\4\11\1\1\2\11\1\0\1\1\1\11\1\1";
private static int[] zzUnpackAttribute() {
int[] result = new int[29];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
}
private static int zzUnpackAttribute(String packed, int offset, int[] result) {
int i = 0; /* index in packed string */
int j = offset; /* index in unpacked array */
int l = packed.length();
while (i < l) {
int count = packed.charAt(i++);
int value = packed.charAt(i++);
do {
result[j++] = value;
}
while (--count > 0);
}
return j;
}
/** the input device */
private Reader zzReader;
/** the current state of the DFA */
private int zzState;
/** the current lexical state */
private int zzLexicalState = YYINITIAL;
/** this buffer contains the current text to be matched and is
the source of the yytext() string */
private CharSequence zzBuffer = "";
/** the textposition at the last accepting state */
private int zzMarkedPos;
/** the current text position in the buffer */
private int zzCurrentPos;
/** startRead marks the beginning of the yytext() string in the buffer */
private int zzStartRead;
/** endRead marks the last character in the buffer, that has been read
from input */
private int zzEndRead;
/**
* zzAtBOL == true <=> the scanner is currently at the beginning of a line
*/
private boolean zzAtBOL = true;
/** zzAtEOF == true <=> the scanner is at the EOF */
private boolean zzAtEOF;
/** denotes if the user-EOF-code has already been executed */
private boolean zzEOFDone;
/* user code: */
private int myPreviousState = YYINITIAL;
public _EditorConfigLexer() {
this(null);
}
private static String sanitizeInput(String input) {
throw new NotImplementedError();
}
/**
* Creates a new scanner
*
* @param in the java.io.Reader to read input from.
*/
public _EditorConfigLexer(Reader in) {
this.zzReader = in;
}
/**
* Unpacks the compressed character translation table.
*
* @param packed the packed character translation table
* @return the unpacked character translation table
*/
private static char[] zzUnpackCMap(String packed) {
int size = 0;
for (int i = 0, length = packed.length(); i < length; i += 2) {
size += packed.charAt(i);
}
char[] map = new char[size];
int i = 0; /* index in packed string */
int j = 0; /* index in unpacked array */
while (i < packed.length()) {
int count = packed.charAt(i++);
char value = packed.charAt(i++);
do {
map[j++] = value;
}
while (--count > 0);
}
return map;
}
@Override
public final int getTokenStart() {
return zzStartRead;
}
@Override
public final int getTokenEnd() {
return getTokenStart() + yylength();
}
@Override
public void reset(CharSequence buffer, int start, int end, int initialState) {
zzBuffer = buffer;
zzCurrentPos = zzMarkedPos = zzStartRead = start;
zzAtEOF = false;
zzAtBOL = true;
zzEndRead = end;
yybegin(initialState);
}
/**
* Refills the input buffer.
*
* @return <code>false</code>, iff there was new input.
*
* @exception IOException if any I/O-Error occurs
*/
private boolean zzRefill() {
return true;
}
/**
* Returns the current lexical state.
*/
@Override
public final int yystate() {
return zzLexicalState;
}
/**
* Enters a new lexical state
*
* @param newState the new lexical state
*/
@Override
public final void yybegin(int newState) {
zzLexicalState = newState;
}
/**
* Returns the text matched by the current regular expression.
*/
public final CharSequence yytext() {
return zzBuffer.subSequence(zzStartRead, zzMarkedPos);
}
/**
* Returns the character at position <tt>pos</tt> from the
* matched text.
*
* It is equivalent to yytext().charAt(pos), but faster
*
* @param pos the position of the character to fetch.
* A value from 0 to yylength()-1.
*
* @return the character at position pos
*/
public final char yycharat(int pos) {
return zzBuffer.charAt(zzStartRead+pos);
}
/**
* Returns the length of the matched text region.
*/
public final int yylength() {
return zzMarkedPos - zzStartRead;
}
/**
* Reports an error that occured while scanning.
*
* In a wellformed scanner (no or only correct usage of
* yypushback(int) and a match-all fallback rule) this method
* will only be called with things that "Can't Possibly Happen".
* If this method is called, something is seriously wrong
* (e.g. a JFlex bug producing a faulty scanner etc.).
*
* Usual syntax/scanner level error handling should be done
* in error fallback rules.
*
* @param errorCode the code of the errormessage to display
*/
private void zzScanError(int errorCode) {
String message;
try {
message = ZZ_ERROR_MSG[errorCode];
}
catch (ArrayIndexOutOfBoundsException e) {
message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
}
throw new Error(message);
}
/**
* Pushes the specified amount of characters back into the input stream.
*
* They will be read again by then next call of the scanning method
*
* @param number the number of characters to be read again.
* This number must not be greater than yylength()!
*/
public void yypushback(int number) {
if (number > yylength() )
zzScanError(ZZ_PUSHBACK_2BIG);
zzMarkedPos -= number;
}
/**
* Resumes scanning until the next regular expression is matched,
* the end of input is encountered or an I/O-Error occurs.
*
* @return the next token
* @exception IOException if any I/O-Error occurs
*/
@Override
public IElementType advance() throws IOException {
int zzInput;
int zzAction;
// cached fields:
int zzCurrentPosL;
int zzMarkedPosL;
int zzEndReadL = zzEndRead;
CharSequence zzBufferL = zzBuffer;
int[] zzTransL = ZZ_TRANS;
int[] zzRowMapL = ZZ_ROWMAP;
int[] zzAttrL = ZZ_ATTRIBUTE;
while (true) {
zzMarkedPosL = zzMarkedPos;
zzAction = -1;
zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
zzState = ZZ_LEXSTATE[zzLexicalState];
// set up zzAction for empty match case:
int zzAttributes = zzAttrL[zzState];
if ((zzAttributes & 1) == 1 ) {
zzAction = zzState;
}
zzForAction: {
while (true) {
if (zzCurrentPosL < zzEndReadL) {
zzInput = Character.codePointAt(zzBufferL, zzCurrentPosL/*, zzEndReadL*/);
zzCurrentPosL += Character.charCount(zzInput);
}
else if (zzAtEOF) {
zzInput = YYEOF;
break zzForAction;
}
else {
// store back cached positions
zzCurrentPos = zzCurrentPosL;
zzMarkedPos = zzMarkedPosL;
boolean eof = zzRefill();
// get translated positions and possibly new buffer
zzCurrentPosL = zzCurrentPos;
zzMarkedPosL = zzMarkedPos;
zzBufferL = zzBuffer;
zzEndReadL = zzEndRead;
if (eof) {
zzInput = YYEOF;
break zzForAction;
}
else {
zzInput = Character.codePointAt(zzBufferL, zzCurrentPosL/*, zzEndReadL*/);
zzCurrentPosL += Character.charCount(zzInput);
}
}
int zzNext = zzTransL[zzRowMapL[zzState] + ZZ_CMAP(zzInput) ];
if (zzNext == -1) break zzForAction;
zzState = zzNext;
zzAttributes = zzAttrL[zzState];
if ((zzAttributes & 1) == 1 ) {
zzAction = zzState;
zzMarkedPosL = zzCurrentPosL;
if ((zzAttributes & 8) == 8) break zzForAction;
}
}
}
// store back cached position
zzMarkedPos = zzMarkedPosL;
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
zzAtEOF = true;
return null;
}
else {
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
case 1: {
return IDENTIFIER;
}
// fall through
case 22:
break;
case 2: {
return WHITE_SPACE;
}
// fall through
case 23:
break;
case 3: {
return LINE_COMMENT;
}
// fall through
case 24:
break;
case 4: {
return DOT;
}
// fall through
case 25:
break;
case 5: {
return COLON;
}
// fall through
case 26:
break;
case 6: {
yybegin(YYINITIAL);
return SEPARATOR;
}
// fall through
case 27:
break;
case 7: {
return COMMA;
}
// fall through
case 28:
break;
case 8: {
return R_BRACKET;
}
// fall through
case 29:
break;
case 9: {
yybegin(YYHEADER);
return L_BRACKET;
}
// fall through
case 30:
break;
case 10: {
return PATTERN_IDENTIFIER;
}
// fall through
case 31:
break;
case 11: {
return R_CURLY;
}
// fall through
case 32:
break;
case 12: {
return BAD_CHARACTER;
}
// fall through
case 33:
break;
case 13: {
yybegin(YYINITIAL);
return R_BRACKET;
}
// fall through
case 34:
break;
case 14: {
return ASTERISK;
}
// fall through
case 35:
break;
case 15: {
return QUESTION;
}
// fall through
case 36:
break;
case 16: {
yybegin(YYCHARCLASS);
return L_BRACKET;
}
// fall through
case 37:
break;
case 17: {
return L_CURLY;
}
// fall through
case 38:
break;
case 18: {
return CHARCLASS_LETTER;
}
// fall through
case 39:
break;
case 19: {
return EXCLAMATION;
}
// fall through
case 40:
break;
case 20: {
yybegin(YYHEADER);
return R_BRACKET;
}
// fall through
case 41:
break;
case 21: {
return DOUBLE_ASTERISK;
}
// fall through
case 42: break;
default:
zzScanError(ZZ_NO_MATCH);
}
}
}
}
}

View File

@@ -0,0 +1,859 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.parser;
import com.intellij.lang.ASTNode;
import com.intellij.lang.LightPsiParser;
import com.intellij.lang.PsiBuilder;
import com.intellij.lang.PsiBuilder.Marker;
import com.intellij.lang.PsiParser;
import com.intellij.psi.tree.IElementType;
import static org.editorconfig.language.parser.EditorConfigParserUtil.*;
import static org.editorconfig.language.psi.EditorConfigElementTypes.*;
@SuppressWarnings({"SimplifiableIfStatement", "UnusedAssignment"})
public class EditorConfigParser implements PsiParser, LightPsiParser {
@Override
public ASTNode parse(IElementType t, PsiBuilder b) {
parseLight(t, b);
return b.getTreeBuilt();
}
@Override
public void parseLight(IElementType t, PsiBuilder b) {
boolean r;
b = adapt_builder_(t, b, this, null);
Marker m = enter_section_(b, 0, _COLLAPSE_, null);
if (t == ASTERISK_PATTERN) {
r = asterisk_pattern(b, 0);
}
else if (t == CHAR_CLASS) {
r = char_class(b, 0);
}
else if (t == CHAR_CLASS_EXCLAMATION) {
r = char_class_exclamation(b, 0);
}
else if (t == CHAR_CLASS_LETTER) {
r = char_class_letter(b, 0);
}
else if (t == DOUBLE_ASTERISK_PATTERN) {
r = double_asterisk_pattern(b, 0);
}
else if (t == FLAT_OPTION_KEY) {
r = flat_option_key(b, 0);
}
else if (t == FLAT_PATTERN) {
r = flat_pattern(b, 0);
}
else if (t == HEADER) {
r = header(b, 0);
}
else if (t == OPTION) {
r = option(b, 0);
}
else if (t == OPTION_VALUE_IDENTIFIER) {
r = option_value_identifier(b, 0);
}
else if (t == OPTION_VALUE_LIST) {
r = option_value_list(b, 0);
}
else if (t == OPTION_VALUE_PAIR) {
r = option_value_pair(b, 0);
}
else if (t == PATTERN) {
r = pattern(b, 0);
}
else if (t == PATTERN_ENUMERATION) {
r = pattern_enumeration(b, 0);
}
else if (t == QUALIFIED_KEY_PART) {
r = qualified_key_part(b, 0);
}
else if (t == QUALIFIED_OPTION_KEY) {
r = qualified_option_key(b, 0);
}
else if (t == QUESTION_PATTERN) {
r = question_pattern(b, 0);
}
else if (t == ROOT_DECLARATION) {
r = root_declaration(b, 0);
}
else if (t == ROOT_DECLARATION_KEY) {
r = root_declaration_key(b, 0);
}
else if (t == ROOT_DECLARATION_VALUE) {
r = root_declaration_value(b, 0);
}
else if (t == SECTION) {
r = section(b, 0);
}
else {
r = parse_root_(t, b, 0);
}
exit_section_(b, 0, m, t, r, true, TRUE_CONDITION);
}
protected boolean parse_root_(IElementType t, PsiBuilder b, int l) {
return editorConfigFile(b, l + 1);
}
/* ********************************************************** */
// ASTERISK
public static boolean asterisk_pattern(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "asterisk_pattern")) return false;
if (!nextTokenIs(b, ASTERISK)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, ASTERISK);
exit_section_(b, m, ASTERISK_PATTERN, r);
return r;
}
/* ********************************************************** */
// L_BRACKET char_class_exclamation? char_class_letter+ R_BRACKET
public static boolean char_class(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "char_class")) return false;
if (!nextTokenIs(b, L_BRACKET)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, L_BRACKET);
r = r && char_class_1(b, l + 1);
r = r && char_class_2(b, l + 1);
r = r && consumeToken(b, R_BRACKET);
exit_section_(b, m, CHAR_CLASS, r);
return r;
}
// char_class_exclamation?
private static boolean char_class_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "char_class_1")) return false;
char_class_exclamation(b, l + 1);
return true;
}
// char_class_letter+
private static boolean char_class_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "char_class_2")) return false;
boolean r;
Marker m = enter_section_(b);
r = char_class_letter(b, l + 1);
while (r) {
int c = current_position_(b);
if (!char_class_letter(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "char_class_2", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// EXCLAMATION
public static boolean char_class_exclamation(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "char_class_exclamation")) return false;
if (!nextTokenIs(b, EXCLAMATION)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, EXCLAMATION);
exit_section_(b, m, CHAR_CLASS_EXCLAMATION, r);
return r;
}
/* ********************************************************** */
// CHARCLASS_LETTER
public static boolean char_class_letter(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "char_class_letter")) return false;
if (!nextTokenIs(b, CHARCLASS_LETTER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, CHARCLASS_LETTER);
exit_section_(b, m, CHAR_CLASS_LETTER, r);
return r;
}
/* ********************************************************** */
// DOUBLE_ASTERISK
public static boolean double_asterisk_pattern(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "double_asterisk_pattern")) return false;
if (!nextTokenIs(b, DOUBLE_ASTERISK)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, DOUBLE_ASTERISK);
exit_section_(b, m, DOUBLE_ASTERISK_PATTERN, r);
return r;
}
/* ********************************************************** */
// root_declaration* section_wrap*
static boolean editorConfigFile(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "editorConfigFile")) return false;
boolean r;
Marker m = enter_section_(b);
r = editorConfigFile_0(b, l + 1);
r = r && editorConfigFile_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// root_declaration*
private static boolean editorConfigFile_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "editorConfigFile_0")) return false;
while (true) {
int c = current_position_(b);
if (!root_declaration(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "editorConfigFile_0", c)) break;
}
return true;
}
// section_wrap*
private static boolean editorConfigFile_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "editorConfigFile_1")) return false;
while (true) {
int c = current_position_(b);
if (!section_wrap(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "editorConfigFile_1", c)) break;
}
return true;
}
/* ********************************************************** */
// IDENTIFIER
public static boolean flat_option_key(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "flat_option_key")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, IDENTIFIER);
exit_section_(b, m, FLAT_OPTION_KEY, r);
return r;
}
/* ********************************************************** */
// PATTERN_IDENTIFIER
public static boolean flat_pattern(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "flat_pattern")) return false;
if (!nextTokenIs(b, PATTERN_IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, PATTERN_IDENTIFIER);
exit_section_(b, m, FLAT_PATTERN, r);
return r;
}
/* ********************************************************** */
// L_BRACKET (pattern | pattern_enumeration)* R_BRACKET
public static boolean header(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, HEADER, "<header>");
r = consumeToken(b, L_BRACKET);
p = r; // pin = 1
r = r && report_error_(b, header_1(b, l + 1));
r = p && consumeToken(b, R_BRACKET) && r;
exit_section_(b, l, m, r, p, not_next_entry_parser_);
return r || p;
}
// (pattern | pattern_enumeration)*
private static boolean header_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_1")) return false;
while (true) {
int c = current_position_(b);
if (!header_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "header_1", c)) break;
}
return true;
}
// pattern | pattern_enumeration
private static boolean header_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "header_1_0")) return false;
boolean r;
r = pattern(b, l + 1);
if (!r) r = pattern_enumeration(b, l + 1);
return r;
}
/* ********************************************************** */
// !header
static boolean not_header(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_header")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !header(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
/* ********************************************************** */
// !(header | option | root_declaration)
static boolean not_next_entry(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_next_entry")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !not_next_entry_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// header | option | root_declaration
private static boolean not_next_entry_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "not_next_entry_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = header(b, l + 1);
if (!r) r = option(b, l + 1);
if (!r) r = root_declaration(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// option_key (SEPARATOR option_value?)?
public static boolean option(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, OPTION, "<option>");
r = option_key(b, l + 1);
p = r; // pin = 1
r = r && option_1(b, l + 1);
exit_section_(b, l, m, r, p, not_next_entry_parser_);
return r || p;
}
// (SEPARATOR option_value?)?
private static boolean option_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_1")) return false;
option_1_0(b, l + 1);
return true;
}
// SEPARATOR option_value?
private static boolean option_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, SEPARATOR);
r = r && option_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// option_value?
private static boolean option_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_1_0_1")) return false;
option_value(b, l + 1);
return true;
}
/* ********************************************************** */
// qualified_option_key | flat_option_key
static boolean option_key(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_key")) return false;
if (!nextTokenIs(b, "", DOT, IDENTIFIER)) return false;
boolean r;
r = qualified_option_key(b, l + 1);
if (!r) r = flat_option_key(b, l + 1);
return r;
}
/* ********************************************************** */
// option_value_pair | option_value_list | option_value_identifier
static boolean option_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value")) return false;
if (!nextTokenIs(b, "", COMMA, IDENTIFIER)) return false;
boolean r;
r = option_value_pair(b, l + 1);
if (!r) r = option_value_list(b, l + 1);
if (!r) r = option_value_identifier(b, l + 1);
return r;
}
/* ********************************************************** */
// IDENTIFIER
public static boolean option_value_identifier(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_identifier")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, IDENTIFIER);
exit_section_(b, m, OPTION_VALUE_IDENTIFIER, r);
return r;
}
/* ********************************************************** */
// COMMA* option_value_identifier (COMMA option_value_identifier !(DOT | SEPARATOR) | COMMA)+
public static boolean option_value_list(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list")) return false;
if (!nextTokenIs(b, "<option value list>", COMMA, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, OPTION_VALUE_LIST, "<option value list>");
r = option_value_list_0(b, l + 1);
r = r && option_value_identifier(b, l + 1);
r = r && option_value_list_2(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// COMMA*
private static boolean option_value_list_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_0")) return false;
while (true) {
int c = current_position_(b);
if (!consumeToken(b, COMMA)) break;
if (!empty_element_parsed_guard_(b, "option_value_list_0", c)) break;
}
return true;
}
// (COMMA option_value_identifier !(DOT | SEPARATOR) | COMMA)+
private static boolean option_value_list_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_2")) return false;
boolean r;
Marker m = enter_section_(b);
r = option_value_list_2_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!option_value_list_2_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "option_value_list_2", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// COMMA option_value_identifier !(DOT | SEPARATOR) | COMMA
private static boolean option_value_list_2_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_2_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = option_value_list_2_0_0(b, l + 1);
if (!r) r = consumeToken(b, COMMA);
exit_section_(b, m, null, r);
return r;
}
// COMMA option_value_identifier !(DOT | SEPARATOR)
private static boolean option_value_list_2_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_2_0_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, COMMA);
r = r && option_value_identifier(b, l + 1);
r = r && option_value_list_2_0_0_2(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// !(DOT | SEPARATOR)
private static boolean option_value_list_2_0_0_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_2_0_0_2")) return false;
boolean r;
Marker m = enter_section_(b, l, _NOT_);
r = !option_value_list_2_0_0_2_0(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// DOT | SEPARATOR
private static boolean option_value_list_2_0_0_2_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_list_2_0_0_2_0")) return false;
boolean r;
r = consumeToken(b, DOT);
if (!r) r = consumeToken(b, SEPARATOR);
return r;
}
/* ********************************************************** */
// (option_value_list | option_value_identifier) COLON (option_value_list | option_value_identifier)
public static boolean option_value_pair(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_pair")) return false;
if (!nextTokenIs(b, "<option value pair>", COMMA, IDENTIFIER)) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, OPTION_VALUE_PAIR, "<option value pair>");
r = option_value_pair_0(b, l + 1);
r = r && consumeToken(b, COLON);
p = r; // pin = 2
r = r && option_value_pair_2(b, l + 1);
exit_section_(b, l, m, r, p, null);
return r || p;
}
// option_value_list | option_value_identifier
private static boolean option_value_pair_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_pair_0")) return false;
boolean r;
r = option_value_list(b, l + 1);
if (!r) r = option_value_identifier(b, l + 1);
return r;
}
// option_value_list | option_value_identifier
private static boolean option_value_pair_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "option_value_pair_2")) return false;
boolean r;
r = option_value_list(b, l + 1);
if (!r) r = option_value_identifier(b, l + 1);
return r;
}
/* ********************************************************** */
// (flat_pattern | asterisk_pattern | double_asterisk_pattern | question_pattern | char_class)+
public static boolean pattern(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern")) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, PATTERN, "<pattern>");
r = pattern_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!pattern_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "pattern", c)) break;
}
exit_section_(b, l, m, r, false, null);
return r;
}
// flat_pattern | asterisk_pattern | double_asterisk_pattern | question_pattern | char_class
private static boolean pattern_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_0")) return false;
boolean r;
r = flat_pattern(b, l + 1);
if (!r) r = asterisk_pattern(b, l + 1);
if (!r) r = double_asterisk_pattern(b, l + 1);
if (!r) r = question_pattern(b, l + 1);
if (!r) r = char_class(b, l + 1);
return r;
}
/* ********************************************************** */
// L_CURLY (pattern (COMMA pattern)*)? R_CURLY
public static boolean pattern_enumeration(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_enumeration")) return false;
if (!nextTokenIs(b, L_CURLY)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, L_CURLY);
r = r && pattern_enumeration_1(b, l + 1);
r = r && consumeToken(b, R_CURLY);
exit_section_(b, m, PATTERN_ENUMERATION, r);
return r;
}
// (pattern (COMMA pattern)*)?
private static boolean pattern_enumeration_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_enumeration_1")) return false;
pattern_enumeration_1_0(b, l + 1);
return true;
}
// pattern (COMMA pattern)*
private static boolean pattern_enumeration_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_enumeration_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = pattern(b, l + 1);
r = r && pattern_enumeration_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// (COMMA pattern)*
private static boolean pattern_enumeration_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_enumeration_1_0_1")) return false;
while (true) {
int c = current_position_(b);
if (!pattern_enumeration_1_0_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "pattern_enumeration_1_0_1", c)) break;
}
return true;
}
// COMMA pattern
private static boolean pattern_enumeration_1_0_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "pattern_enumeration_1_0_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, COMMA);
r = r && pattern(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// IDENTIFIER
public static boolean qualified_key_part(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_key_part")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, IDENTIFIER);
exit_section_(b, m, QUALIFIED_KEY_PART, r);
return r;
}
/* ********************************************************** */
// DOT* (qualified_key_part DOT+)+ qualified_key_part? | (DOT+ qualified_key_part)
public static boolean qualified_option_key(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key")) return false;
if (!nextTokenIs(b, "<qualified option key>", DOT, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b, l, _NONE_, QUALIFIED_OPTION_KEY, "<qualified option key>");
r = qualified_option_key_0(b, l + 1);
if (!r) r = qualified_option_key_1(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
// DOT* (qualified_key_part DOT+)+ qualified_key_part?
private static boolean qualified_option_key_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = qualified_option_key_0_0(b, l + 1);
r = r && qualified_option_key_0_1(b, l + 1);
r = r && qualified_option_key_0_2(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// DOT*
private static boolean qualified_option_key_0_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0_0")) return false;
while (true) {
int c = current_position_(b);
if (!consumeToken(b, DOT)) break;
if (!empty_element_parsed_guard_(b, "qualified_option_key_0_0", c)) break;
}
return true;
}
// (qualified_key_part DOT+)+
private static boolean qualified_option_key_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = qualified_option_key_0_1_0(b, l + 1);
while (r) {
int c = current_position_(b);
if (!qualified_option_key_0_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "qualified_option_key_0_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// qualified_key_part DOT+
private static boolean qualified_option_key_0_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = qualified_key_part(b, l + 1);
r = r && qualified_option_key_0_1_0_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// DOT+
private static boolean qualified_option_key_0_1_0_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0_1_0_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, DOT);
while (r) {
int c = current_position_(b);
if (!consumeToken(b, DOT)) break;
if (!empty_element_parsed_guard_(b, "qualified_option_key_0_1_0_1", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
// qualified_key_part?
private static boolean qualified_option_key_0_2(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_0_2")) return false;
qualified_key_part(b, l + 1);
return true;
}
// DOT+ qualified_key_part
private static boolean qualified_option_key_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_1")) return false;
boolean r;
Marker m = enter_section_(b);
r = qualified_option_key_1_0(b, l + 1);
r = r && qualified_key_part(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// DOT+
private static boolean qualified_option_key_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "qualified_option_key_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, DOT);
while (r) {
int c = current_position_(b);
if (!consumeToken(b, DOT)) break;
if (!empty_element_parsed_guard_(b, "qualified_option_key_1_0", c)) break;
}
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// QUESTION
public static boolean question_pattern(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "question_pattern")) return false;
if (!nextTokenIs(b, QUESTION)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, QUESTION);
exit_section_(b, m, QUESTION_PATTERN, r);
return r;
}
/* ********************************************************** */
// root_declaration_key SEPARATOR root_declaration_list (COLON root_declaration_list)?
public static boolean root_declaration(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, ROOT_DECLARATION, "<root declaration>");
r = root_declaration_key(b, l + 1);
r = r && consumeToken(b, SEPARATOR);
p = r; // pin = 2
r = r && report_error_(b, root_declaration_list(b, l + 1));
r = p && root_declaration_3(b, l + 1) && r;
exit_section_(b, l, m, r, p, not_next_entry_parser_);
return r || p;
}
// (COLON root_declaration_list)?
private static boolean root_declaration_3(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_3")) return false;
root_declaration_3_0(b, l + 1);
return true;
}
// COLON root_declaration_list
private static boolean root_declaration_3_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_3_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, COLON);
r = r && root_declaration_list(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// IDENTIFIER
public static boolean root_declaration_key(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_key")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, IDENTIFIER);
exit_section_(b, m, ROOT_DECLARATION_KEY, r);
return r;
}
/* ********************************************************** */
// root_declaration_value (COMMA root_declaration_value)*
static boolean root_declaration_list(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_list")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = root_declaration_value(b, l + 1);
r = r && root_declaration_list_1(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
// (COMMA root_declaration_value)*
private static boolean root_declaration_list_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_list_1")) return false;
while (true) {
int c = current_position_(b);
if (!root_declaration_list_1_0(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "root_declaration_list_1", c)) break;
}
return true;
}
// COMMA root_declaration_value
private static boolean root_declaration_list_1_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_list_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, COMMA);
r = r && root_declaration_value(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
/* ********************************************************** */
// IDENTIFIER
public static boolean root_declaration_value(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "root_declaration_value")) return false;
if (!nextTokenIs(b, IDENTIFIER)) return false;
boolean r;
Marker m = enter_section_(b);
r = consumeToken(b, IDENTIFIER);
exit_section_(b, m, ROOT_DECLARATION_VALUE, r);
return r;
}
/* ********************************************************** */
// header option*
public static boolean section(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "section")) return false;
boolean r, p;
Marker m = enter_section_(b, l, _NONE_, SECTION, "<section>");
r = header(b, l + 1);
p = r; // pin = 1
r = r && section_1(b, l + 1);
exit_section_(b, l, m, r, p, not_header_parser_);
return r || p;
}
// option*
private static boolean section_1(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "section_1")) return false;
while (true) {
int c = current_position_(b);
if (!option(b, l + 1)) break;
if (!empty_element_parsed_guard_(b, "section_1", c)) break;
}
return true;
}
/* ********************************************************** */
// section <<unbindComments>>
static boolean section_wrap(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "section_wrap")) return false;
if (!nextTokenIs(b, L_BRACKET)) return false;
boolean r;
Marker m = enter_section_(b);
r = section(b, l + 1);
r = r && unbindComments(b, l + 1);
exit_section_(b, m, null, r);
return r;
}
final static Parser not_header_parser_ = new Parser() {
@Override
public boolean parse(PsiBuilder b, int l) {
return not_header(b, l + 1);
}
};
final static Parser not_next_entry_parser_ = new Parser() {
@Override
public boolean parse(PsiBuilder b, int l) {
return not_next_entry(b, l + 1);
}
};
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigAsteriskPattern extends EditorConfigHeaderElement {
}

View File

@@ -0,0 +1,19 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public interface EditorConfigCharClass extends EditorConfigHeaderElement {
@Nullable
EditorConfigCharClassExclamation getCharClassExclamation();
@NotNull
List<EditorConfigCharClassLetter> getCharClassLetterList();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigCharClassExclamation extends EditorConfigHeaderElement {
}

View File

@@ -0,0 +1,13 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigCharClassLetter extends EditorConfigHeaderElement {
boolean isEscape();
boolean isValidEscape();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigDoubleAsteriskPattern extends EditorConfigHeaderElement {
}

View File

@@ -0,0 +1,121 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.tree.IElementType;
import org.editorconfig.language.psi.impl.*;
public interface EditorConfigElementTypes {
IElementType ASTERISK_PATTERN = new EditorConfigElementType("ASTERISK_PATTERN");
IElementType CHAR_CLASS = new EditorConfigElementType("CHAR_CLASS");
IElementType CHAR_CLASS_EXCLAMATION = new EditorConfigElementType("CHAR_CLASS_EXCLAMATION");
IElementType CHAR_CLASS_LETTER = new EditorConfigElementType("CHAR_CLASS_LETTER");
IElementType DOUBLE_ASTERISK_PATTERN = new EditorConfigElementType("DOUBLE_ASTERISK_PATTERN");
IElementType FLAT_OPTION_KEY = new EditorConfigElementType("FLAT_OPTION_KEY");
IElementType FLAT_PATTERN = new EditorConfigElementType("FLAT_PATTERN");
IElementType HEADER = new EditorConfigElementType("HEADER");
IElementType OPTION = new EditorConfigElementType("OPTION");
IElementType OPTION_VALUE_IDENTIFIER = new EditorConfigElementType("OPTION_VALUE_IDENTIFIER");
IElementType OPTION_VALUE_LIST = new EditorConfigElementType("OPTION_VALUE_LIST");
IElementType OPTION_VALUE_PAIR = new EditorConfigElementType("OPTION_VALUE_PAIR");
IElementType PATTERN = new EditorConfigElementType("PATTERN");
IElementType PATTERN_ENUMERATION = new EditorConfigElementType("PATTERN_ENUMERATION");
IElementType QUALIFIED_KEY_PART = new EditorConfigElementType("QUALIFIED_KEY_PART");
IElementType QUALIFIED_OPTION_KEY = new EditorConfigElementType("QUALIFIED_OPTION_KEY");
IElementType QUESTION_PATTERN = new EditorConfigElementType("QUESTION_PATTERN");
IElementType ROOT_DECLARATION = new EditorConfigElementType("ROOT_DECLARATION");
IElementType ROOT_DECLARATION_KEY = new EditorConfigElementType("ROOT_DECLARATION_KEY");
IElementType ROOT_DECLARATION_VALUE = new EditorConfigElementType("ROOT_DECLARATION_VALUE");
IElementType SECTION = new EditorConfigElementType("SECTION");
IElementType ASTERISK = new EditorConfigTokenType("ASTERISK");
IElementType CHARCLASS_LETTER = new EditorConfigTokenType("CHARCLASS_LETTER");
IElementType COLON = new EditorConfigTokenType("COLON");
IElementType COMMA = new EditorConfigTokenType("COMMA");
IElementType DOT = new EditorConfigTokenType("DOT");
IElementType DOUBLE_ASTERISK = new EditorConfigTokenType("DOUBLE_ASTERISK");
IElementType EXCLAMATION = new EditorConfigTokenType("EXCLAMATION");
IElementType IDENTIFIER = new EditorConfigTokenType("IDENTIFIER");
IElementType LINE_COMMENT = new EditorConfigTokenType("LINE_COMMENT");
IElementType L_BRACKET = new EditorConfigTokenType("L_BRACKET");
IElementType L_CURLY = new EditorConfigTokenType("L_CURLY");
IElementType PATTERN_IDENTIFIER = new EditorConfigTokenType("PATTERN_IDENTIFIER");
IElementType QUESTION = new EditorConfigTokenType("QUESTION");
IElementType R_BRACKET = new EditorConfigTokenType("R_BRACKET");
IElementType R_CURLY = new EditorConfigTokenType("R_CURLY");
IElementType SEPARATOR = new EditorConfigTokenType("SEPARATOR");
class Factory {
public static PsiElement createElement(ASTNode node) {
IElementType type = node.getElementType();
if (type == ASTERISK_PATTERN) {
return new EditorConfigAsteriskPatternImpl(node);
}
else if (type == CHAR_CLASS) {
return new EditorConfigCharClassImpl(node);
}
else if (type == CHAR_CLASS_EXCLAMATION) {
return new EditorConfigCharClassExclamationImpl(node);
}
else if (type == CHAR_CLASS_LETTER) {
return new EditorConfigCharClassLetterImpl(node);
}
else if (type == DOUBLE_ASTERISK_PATTERN) {
return new EditorConfigDoubleAsteriskPatternImpl(node);
}
else if (type == FLAT_OPTION_KEY) {
return new EditorConfigFlatOptionKeyImpl(node);
}
else if (type == FLAT_PATTERN) {
return new EditorConfigFlatPatternImpl(node);
}
else if (type == HEADER) {
return new EditorConfigHeaderImpl(node);
}
else if (type == OPTION) {
return new EditorConfigOptionImpl(node);
}
else if (type == OPTION_VALUE_IDENTIFIER) {
return new EditorConfigOptionValueIdentifierImpl(node);
}
else if (type == OPTION_VALUE_LIST) {
return new EditorConfigOptionValueListImpl(node);
}
else if (type == OPTION_VALUE_PAIR) {
return new EditorConfigOptionValuePairImpl(node);
}
else if (type == PATTERN) {
return new EditorConfigPatternImpl(node);
}
else if (type == PATTERN_ENUMERATION) {
return new EditorConfigPatternEnumerationImpl(node);
}
else if (type == QUALIFIED_KEY_PART) {
return new EditorConfigQualifiedKeyPartImpl(node);
}
else if (type == QUALIFIED_OPTION_KEY) {
return new EditorConfigQualifiedOptionKeyImpl(node);
}
else if (type == QUESTION_PATTERN) {
return new EditorConfigQuestionPatternImpl(node);
}
else if (type == ROOT_DECLARATION) {
return new EditorConfigRootDeclarationImpl(node);
}
else if (type == ROOT_DECLARATION_KEY) {
return new EditorConfigRootDeclarationKeyImpl(node);
}
else if (type == ROOT_DECLARATION_VALUE) {
return new EditorConfigRootDeclarationValueImpl(node);
}
else if (type == SECTION) {
return new EditorConfigSectionImpl(node);
}
throw new AssertionError("Unknown element type: " + type);
}
}
}

View File

@@ -0,0 +1,17 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigIdentifierElement;
import org.editorconfig.language.psi.reference.EditorConfigFlatOptionKeyReference;
import org.jetbrains.annotations.NotNull;
public interface EditorConfigFlatOptionKey extends EditorConfigIdentifierElement {
boolean definesSameOption(@NotNull EditorConfigFlatOptionKey element);
@Override
@NotNull
EditorConfigFlatOptionKeyReference getReference();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigFlatPattern extends EditorConfigHeaderElement {
}

View File

@@ -0,0 +1,21 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigHeader extends EditorConfigHeaderElement {
@NotNull
List<EditorConfigPattern> getPatternList();
@NotNull
List<EditorConfigPatternEnumeration> getPatternEnumerationList();
boolean isValidGlob();
}

View File

@@ -0,0 +1,39 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.editorconfig.language.schema.descriptors.impl.EditorConfigOptionDescriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public interface EditorConfigOption extends EditorConfigDescribableElement {
@Nullable
EditorConfigFlatOptionKey getFlatOptionKey();
@Nullable
EditorConfigOptionValueIdentifier getOptionValueIdentifier();
@Nullable
EditorConfigOptionValueList getOptionValueList();
@Nullable
EditorConfigOptionValuePair getOptionValuePair();
@Nullable
EditorConfigQualifiedOptionKey getQualifiedOptionKey();
@NotNull
List<String> getKeyParts();
@Nullable
EditorConfigDescribableElement getAnyValue();
@Override
@Nullable
EditorConfigOptionDescriptor getDescriptor(boolean smart);
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigIdentifierElement;
public interface EditorConfigOptionValueIdentifier extends EditorConfigIdentifierElement {
}

View File

@@ -0,0 +1,21 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.editorconfig.language.schema.descriptors.EditorConfigDescriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public interface EditorConfigOptionValueList extends EditorConfigDescribableElement {
@NotNull
List<EditorConfigOptionValueIdentifier> getOptionValueIdentifierList();
@Override
@Nullable
EditorConfigDescriptor getDescriptor(boolean smart);
}

View File

@@ -0,0 +1,30 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.editorconfig.language.schema.descriptors.EditorConfigDescriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public interface EditorConfigOptionValuePair extends EditorConfigDescribableElement {
@NotNull
List<EditorConfigOptionValueIdentifier> getOptionValueIdentifierList();
@NotNull
List<EditorConfigOptionValueList> getOptionValueListList();
@NotNull
EditorConfigDescribableElement getFirst();
@NotNull
EditorConfigDescribableElement getSecond();
@Override
@Nullable
EditorConfigDescriptor getDescriptor(boolean smart);
}

View File

@@ -0,0 +1,27 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigPattern extends EditorConfigHeaderElement {
@NotNull
List<EditorConfigAsteriskPattern> getAsteriskPatternList();
@NotNull
List<EditorConfigCharClass> getCharClassList();
@NotNull
List<EditorConfigDoubleAsteriskPattern> getDoubleAsteriskPatternList();
@NotNull
List<EditorConfigFlatPattern> getFlatPatternList();
@NotNull
List<EditorConfigQuestionPattern> getQuestionPatternList();
}

View File

@@ -0,0 +1,15 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigPatternEnumeration extends EditorConfigHeaderElement {
@NotNull
List<EditorConfigPattern> getPatternList();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigIdentifierElement;
public interface EditorConfigQualifiedKeyPart extends EditorConfigIdentifierElement {
}

View File

@@ -0,0 +1,15 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigQualifiedOptionKey extends EditorConfigDescribableElement {
@NotNull
List<EditorConfigQualifiedKeyPart> getQualifiedKeyPartList();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
public interface EditorConfigQuestionPattern extends EditorConfigHeaderElement {
}

View File

@@ -0,0 +1,20 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.psi.NavigatablePsiElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigRootDeclaration extends NavigatablePsiElement {
@NotNull
EditorConfigRootDeclarationKey getRootDeclarationKey();
@NotNull
List<EditorConfigRootDeclarationValue> getRootDeclarationValueList();
boolean isValidRootDeclaration();
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.psi.PsiElement;
public interface EditorConfigRootDeclarationKey extends PsiElement {
}

View File

@@ -0,0 +1,10 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.psi.PsiElement;
public interface EditorConfigRootDeclarationValue extends PsiElement {
}

View File

@@ -0,0 +1,21 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.psi.NavigatablePsiElement;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public interface EditorConfigSection extends NavigatablePsiElement {
@NotNull
EditorConfigHeader getHeader();
@NotNull
List<EditorConfigOption> getOptionList();
boolean containsKey(@NotNull EditorConfigFlatOptionKey key);
}

View File

@@ -0,0 +1,119 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi;
import com.intellij.psi.NavigatablePsiElement;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.editorconfig.language.psi.interfaces.EditorConfigHeaderElement;
import org.editorconfig.language.psi.interfaces.EditorConfigIdentifierElement;
import org.jetbrains.annotations.NotNull;
public class EditorConfigVisitor extends PsiElementVisitor {
public void visitAsteriskPattern(@NotNull EditorConfigAsteriskPattern o) {
visitHeaderElement(o);
}
public void visitCharClass(@NotNull EditorConfigCharClass o) {
visitHeaderElement(o);
}
public void visitCharClassExclamation(@NotNull EditorConfigCharClassExclamation o) {
visitHeaderElement(o);
}
public void visitCharClassLetter(@NotNull EditorConfigCharClassLetter o) {
visitHeaderElement(o);
}
public void visitDoubleAsteriskPattern(@NotNull EditorConfigDoubleAsteriskPattern o) {
visitHeaderElement(o);
}
public void visitFlatOptionKey(@NotNull EditorConfigFlatOptionKey o) {
visitIdentifierElement(o);
}
public void visitFlatPattern(@NotNull EditorConfigFlatPattern o) {
visitHeaderElement(o);
}
public void visitHeader(@NotNull EditorConfigHeader o) {
visitHeaderElement(o);
}
public void visitOption(@NotNull EditorConfigOption o) {
visitDescribableElement(o);
}
public void visitOptionValueIdentifier(@NotNull EditorConfigOptionValueIdentifier o) {
visitIdentifierElement(o);
}
public void visitOptionValueList(@NotNull EditorConfigOptionValueList o) {
visitDescribableElement(o);
}
public void visitOptionValuePair(@NotNull EditorConfigOptionValuePair o) {
visitDescribableElement(o);
}
public void visitPattern(@NotNull EditorConfigPattern o) {
visitHeaderElement(o);
}
public void visitPatternEnumeration(@NotNull EditorConfigPatternEnumeration o) {
visitHeaderElement(o);
}
public void visitQualifiedKeyPart(@NotNull EditorConfigQualifiedKeyPart o) {
visitIdentifierElement(o);
}
public void visitQualifiedOptionKey(@NotNull EditorConfigQualifiedOptionKey o) {
visitDescribableElement(o);
}
public void visitQuestionPattern(@NotNull EditorConfigQuestionPattern o) {
visitHeaderElement(o);
}
public void visitRootDeclaration(@NotNull EditorConfigRootDeclaration o) {
visitNavigatablePsiElement(o);
}
public void visitRootDeclarationKey(@NotNull EditorConfigRootDeclarationKey o) {
visitPsiElement(o);
}
public void visitRootDeclarationValue(@NotNull EditorConfigRootDeclarationValue o) {
visitPsiElement(o);
}
public void visitSection(@NotNull EditorConfigSection o) {
visitNavigatablePsiElement(o);
}
public void visitDescribableElement(@NotNull EditorConfigDescribableElement o) {
visitPsiElement(o);
}
public void visitHeaderElement(@NotNull EditorConfigHeaderElement o) {
visitPsiElement(o);
}
public void visitIdentifierElement(@NotNull EditorConfigIdentifierElement o) {
visitPsiElement(o);
}
public void visitNavigatablePsiElement(@NotNull NavigatablePsiElement o) {
visitElement(o);
}
public void visitPsiElement(@NotNull PsiElement o) {
visitElement(o);
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigAsteriskPattern;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigAsteriskPatternImpl extends EditorConfigHeaderElementBase implements EditorConfigAsteriskPattern {
public EditorConfigAsteriskPatternImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitAsteriskPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigCharClassExclamation;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigCharClassExclamationImpl extends EditorConfigHeaderElementBase implements EditorConfigCharClassExclamation {
public EditorConfigCharClassExclamationImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitCharClassExclamation(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,50 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigCharClass;
import org.editorconfig.language.psi.EditorConfigCharClassExclamation;
import org.editorconfig.language.psi.EditorConfigCharClassLetter;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public class EditorConfigCharClassImpl extends EditorConfigHeaderElementBase implements EditorConfigCharClass {
public EditorConfigCharClassImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitCharClass(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@Nullable
public EditorConfigCharClassExclamation getCharClassExclamation() {
return findChildByClass(EditorConfigCharClassExclamation.class);
}
@Override
@NotNull
public List<EditorConfigCharClassLetter> getCharClassLetterList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigCharClassLetter.class);
}
}

View File

@@ -0,0 +1,42 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigCharClassLetter;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigCharClassLetterImpl extends EditorConfigHeaderElementBase implements EditorConfigCharClassLetter {
public EditorConfigCharClassLetterImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitCharClassLetter(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
public boolean isEscape() {
return EditorConfigPsiImplUtils.isEscape(this);
}
@Override
public boolean isValidEscape() {
return EditorConfigPsiImplUtils.isValidEscape(this);
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigDoubleAsteriskPattern;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigDoubleAsteriskPatternImpl extends EditorConfigHeaderElementBase implements EditorConfigDoubleAsteriskPattern {
public EditorConfigDoubleAsteriskPatternImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitDoubleAsteriskPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigFlatOptionKey;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigFlatOptionKeyBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigFlatOptionKeyImpl extends EditorConfigFlatOptionKeyBase implements EditorConfigFlatOptionKey {
public EditorConfigFlatOptionKeyImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitFlatOptionKey(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigFlatPattern;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigFlatPatternImpl extends EditorConfigHeaderElementBase implements EditorConfigFlatPattern {
public EditorConfigFlatPatternImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitFlatPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,49 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigHeader;
import org.editorconfig.language.psi.EditorConfigPattern;
import org.editorconfig.language.psi.EditorConfigPatternEnumeration;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigHeaderImpl extends EditorConfigHeaderBase implements EditorConfigHeader {
public EditorConfigHeaderImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitHeader(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigPattern> getPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigPattern.class);
}
@Override
@NotNull
public List<EditorConfigPatternEnumeration> getPatternEnumerationList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigPatternEnumeration.class);
}
}

View File

@@ -0,0 +1,63 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.*;
import org.editorconfig.language.psi.base.EditorConfigOptionBase;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class EditorConfigOptionImpl extends EditorConfigOptionBase implements EditorConfigOption {
public EditorConfigOptionImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitOption(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@Nullable
public EditorConfigFlatOptionKey getFlatOptionKey() {
return findChildByClass(EditorConfigFlatOptionKey.class);
}
@Override
@Nullable
public EditorConfigOptionValueIdentifier getOptionValueIdentifier() {
return findChildByClass(EditorConfigOptionValueIdentifier.class);
}
@Override
@Nullable
public EditorConfigOptionValueList getOptionValueList() {
return findChildByClass(EditorConfigOptionValueList.class);
}
@Override
@Nullable
public EditorConfigOptionValuePair getOptionValuePair() {
return findChildByClass(EditorConfigOptionValuePair.class);
}
@Override
@Nullable
public EditorConfigQualifiedOptionKey getQualifiedOptionKey() {
return findChildByClass(EditorConfigQualifiedOptionKey.class);
}
}

View File

@@ -0,0 +1,34 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigOptionValueIdentifier;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigOptionValueIdentifierBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigOptionValueIdentifierImpl extends EditorConfigOptionValueIdentifierBase
implements EditorConfigOptionValueIdentifier {
public EditorConfigOptionValueIdentifierImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitOptionValueIdentifier(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,50 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigOptionValueIdentifier;
import org.editorconfig.language.psi.EditorConfigOptionValueList;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigDescribableElementBase;
import org.editorconfig.language.schema.descriptors.EditorConfigDescriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public class EditorConfigOptionValueListImpl extends EditorConfigDescribableElementBase implements EditorConfigOptionValueList {
public EditorConfigOptionValueListImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitOptionValueList(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigOptionValueIdentifier> getOptionValueIdentifierList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigOptionValueIdentifier.class);
}
@Override
@Nullable
public EditorConfigDescriptor getDescriptor(boolean smart) {
return EditorConfigPsiImplUtils.getDescriptor(this, smart);
}
}

View File

@@ -0,0 +1,70 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigOptionValueIdentifier;
import org.editorconfig.language.psi.EditorConfigOptionValueList;
import org.editorconfig.language.psi.EditorConfigOptionValuePair;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigDescribableElementBase;
import org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement;
import org.editorconfig.language.schema.descriptors.EditorConfigDescriptor;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public class EditorConfigOptionValuePairImpl extends EditorConfigDescribableElementBase implements EditorConfigOptionValuePair {
public EditorConfigOptionValuePairImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitOptionValuePair(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigOptionValueIdentifier> getOptionValueIdentifierList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigOptionValueIdentifier.class);
}
@Override
@NotNull
public List<EditorConfigOptionValueList> getOptionValueListList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigOptionValueList.class);
}
@Override
@NotNull
public EditorConfigDescribableElement getFirst() {
return EditorConfigPsiImplUtils.getFirst(this);
}
@Override
@NotNull
public EditorConfigDescribableElement getSecond() {
return EditorConfigPsiImplUtils.getSecond(this);
}
@Override
@Nullable
public EditorConfigDescriptor getDescriptor(boolean smart) {
return EditorConfigPsiImplUtils.getDescriptor(this, smart);
}
}

View File

@@ -0,0 +1,42 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigPattern;
import org.editorconfig.language.psi.EditorConfigPatternEnumeration;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigPatternEnumerationImpl extends EditorConfigHeaderElementBase implements EditorConfigPatternEnumeration {
public EditorConfigPatternEnumerationImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitPatternEnumeration(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigPattern> getPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigPattern.class);
}
}

View File

@@ -0,0 +1,64 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.*;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigPatternImpl extends EditorConfigHeaderElementBase implements EditorConfigPattern {
public EditorConfigPatternImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigAsteriskPattern> getAsteriskPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigAsteriskPattern.class);
}
@Override
@NotNull
public List<EditorConfigCharClass> getCharClassList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigCharClass.class);
}
@Override
@NotNull
public List<EditorConfigDoubleAsteriskPattern> getDoubleAsteriskPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigDoubleAsteriskPattern.class);
}
@Override
@NotNull
public List<EditorConfigFlatPattern> getFlatPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigFlatPattern.class);
}
@Override
@NotNull
public List<EditorConfigQuestionPattern> getQuestionPatternList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigQuestionPattern.class);
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigQualifiedKeyPart;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigQualifiedKeyPartBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigQualifiedKeyPartImpl extends EditorConfigQualifiedKeyPartBase implements EditorConfigQualifiedKeyPart {
public EditorConfigQualifiedKeyPartImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitQualifiedKeyPart(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,42 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigQualifiedKeyPart;
import org.editorconfig.language.psi.EditorConfigQualifiedOptionKey;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigQualifiedOptionKeyBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigQualifiedOptionKeyImpl extends EditorConfigQualifiedOptionKeyBase implements EditorConfigQualifiedOptionKey {
public EditorConfigQualifiedOptionKeyImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitQualifiedOptionKey(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public List<EditorConfigQualifiedKeyPart> getQualifiedKeyPartList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigQualifiedKeyPart.class);
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigQuestionPattern;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigHeaderElementBase;
import org.jetbrains.annotations.NotNull;
public class EditorConfigQuestionPatternImpl extends EditorConfigHeaderElementBase implements EditorConfigQuestionPattern {
public EditorConfigQuestionPatternImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitQuestionPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,49 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigRootDeclaration;
import org.editorconfig.language.psi.EditorConfigRootDeclarationKey;
import org.editorconfig.language.psi.EditorConfigRootDeclarationValue;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigRootDeclarationBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigRootDeclarationImpl extends EditorConfigRootDeclarationBase implements EditorConfigRootDeclaration {
public EditorConfigRootDeclarationImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitRootDeclaration(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public EditorConfigRootDeclarationKey getRootDeclarationKey() {
return findNotNullChildByClass(EditorConfigRootDeclarationKey.class);
}
@Override
@NotNull
public List<EditorConfigRootDeclarationValue> getRootDeclarationValueList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigRootDeclarationValue.class);
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.extapi.psi.ASTWrapperPsiElement;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigRootDeclarationKey;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.jetbrains.annotations.NotNull;
public class EditorConfigRootDeclarationKeyImpl extends ASTWrapperPsiElement implements EditorConfigRootDeclarationKey {
public EditorConfigRootDeclarationKeyImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitRootDeclarationKey(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,33 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.extapi.psi.ASTWrapperPsiElement;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import org.editorconfig.language.psi.EditorConfigRootDeclarationValue;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.jetbrains.annotations.NotNull;
public class EditorConfigRootDeclarationValueImpl extends ASTWrapperPsiElement implements EditorConfigRootDeclarationValue {
public EditorConfigRootDeclarationValueImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitRootDeclarationValue(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
}

View File

@@ -0,0 +1,50 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// This is a generated file. Not intended for manual editing.
package org.editorconfig.language.psi.impl;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import org.editorconfig.language.psi.EditorConfigHeader;
import org.editorconfig.language.psi.EditorConfigOption;
import org.editorconfig.language.psi.EditorConfigSection;
import org.editorconfig.language.psi.EditorConfigVisitor;
import org.editorconfig.language.psi.base.EditorConfigSectionBase;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public class EditorConfigSectionImpl extends EditorConfigSectionBase implements EditorConfigSection {
public EditorConfigSectionImpl(@NotNull ASTNode node) {
super(node);
}
public void accept(@NotNull EditorConfigVisitor visitor) {
visitor.visitSection(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof EditorConfigVisitor) {
accept((EditorConfigVisitor)visitor);
}
else {
super.accept(visitor);
}
}
@Override
@NotNull
public EditorConfigHeader getHeader() {
return findNotNullChildByClass(EditorConfigHeader.class);
}
@Override
@NotNull
public List<EditorConfigOption> getOptionList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, EditorConfigOption.class);
}
}

View File

@@ -5,7 +5,11 @@
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/lib" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/testSrc" type="java-test-resource" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
@@ -15,9 +19,7 @@
<root url="jar://$MODULE_DIR$/lib/editorconfig-core-java.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$MODULE_DIR$/lib/editorconfig-core-java.jar!/" />
</SOURCES>
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module" module-name="intellij.platform.core" />
@@ -25,5 +27,10 @@
<orderEntry type="module" module-name="intellij.platform.ide.impl" />
<orderEntry type="module" module-name="intellij.platform.lang" />
<orderEntry type="module" module-name="intellij.platform.lang.impl" />
<orderEntry type="module" module-name="intellij.platform.testFramework" scope="TEST" />
<orderEntry type="library" name="gson" level="project" />
<orderEntry type="module" module-name="intellij.spellchecker" />
<orderEntry type="module" module-name="intellij.java.testFramework" scope="TEST" />
<orderEntry type="library" name="automaton" level="project" />
</component>
</module>
</module>

View File

@@ -1,21 +1,473 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<idea-plugin>
<id>org.editorconfig.editorconfigjetbrains</id>
<name>EditorConfig</name>
<vendor url="http://editorconfig.org">Kevin Bell, JetBrains</vendor>
<vendor url="http://editorconfig.org">Kirill Glazyrin and Kevin Bell, JetBrains</vendor>
<description><![CDATA[
A JetBrains IDE plugin supporting the EditorConfig standard
A JetBrains IDE plugin supporting the EditorConfig standard and EditorConfig language
]]></description>
<depends>com.intellij.modules.lang</depends>
<actions>
<action id="NewEditorConfigFile" class="org.editorconfig.language.codeinsight.actions.CreateEditorConfigFileAction">
<add-to-group group-id="NewGroup" anchor="before" relative-to-action="NewFromTemplate"/>
</action>
</actions>
<extensions defaultExtensionNs="com.intellij">
<applicationService serviceInterface="org.editorconfig.plugincomponents.EditorConfigNotifier"
serviceImplementation="org.editorconfig.plugincomponents.EditorConfigNotifier"/>
<!-- Standard support -->
<applicationService
serviceInterface="org.editorconfig.plugincomponents.EditorConfigNotifier"
serviceImplementation="org.editorconfig.plugincomponents.EditorConfigNotifier"/>
<generalCodeStyleOptionsProvider instance="org.editorconfig.settings.EditorConfigConfigurable"/>
<codeStyleSettingsProvider implementation="org.editorconfig.settings.EditorConfigConfigurable"/>
<fileIndentOptionsProvider implementation="org.editorconfig.configmanagement.EditorConfigIndentOptionsProvider" order="first"/>
<applicationService serviceInterface="org.editorconfig.plugincomponents.SettingsProviderComponent" serviceImplementation="org.editorconfig.plugincomponents.SettingsProviderComponent" />
<applicationService
serviceInterface="org.editorconfig.plugincomponents.SettingsProviderComponent"
serviceImplementation="org.editorconfig.plugincomponents.SettingsProviderComponent"/>
<postStartupActivity implementation="org.editorconfig.plugincomponents.ConfigProjectComponent"/>
<!-- Language support -->
<fileTypeFactory implementation="org.editorconfig.language.filetype.EditorConfigFileTypeFactory"/>
<colorSettingsPage implementation="org.editorconfig.language.highlighting.EditorConfigColorSettingsPage"/>
<annotator
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.annotators.EditorConfigAnnotator"/>
<enterHandlerDelegate implementation="org.editorconfig.language.codeinsight.actions.EnterInEditorConfigFileHandler"/>
<vetoRenameCondition implementation="org.editorconfig.language.codeinsight.refactoring.EditorConfigVetoRenameCondition"/>
<completion.contributor
language="editorconfig"
id="EditorConfigCompletionContributor"
order="last"
implementationClass="org.editorconfig.language.codeinsight.completion.EditorConfigCompletionContributor"/>
<codeStyleSettingsProvider implementation="org.editorconfig.language.codestyle.EditorConfigCodeStyleSettingsProvider"/>
<langCodeStyleSettingsProvider implementation="org.editorconfig.language.codestyle.EditorConfigLanguageCodeStyleSettingsProvider"/>
<statementUpDownMover implementation="org.editorconfig.language.codeinsight.actions.EditorConfigStatementUpDownMover"/>
<moveLeftRightHandler
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.actions.EditorConfigMoveElementLeftRightHandler"/>
<spellchecker.support
language="editorconfig"
implementationClass="org.editorconfig.language.spellchecker.EditorConfigSpellcheckerStrategy"/>
<typedHandler implementation="org.editorconfig.language.codeinsight.actions.EditorConfigTypedHandlerDelegate"/>
<findUsagesHandlerFactory implementation="org.editorconfig.language.codeinsight.findusages.EditorConfigFindUsagesHandlerFactory"/>
<breadcrumbsInfoProvider implementation="org.editorconfig.language.breadcrumbs.EditorConfigBreadcrumbsProvider"/>
<renameHandler implementation="org.editorconfig.language.codeinsight.refactoring.EditorConfigRenameHandler"/>
<elementDescriptionProvider
implementation="org.editorconfig.language.codeinsight.documentation.EditorConfigElementDescriptionProvider"/>
<editorNotificationProvider implementation="org.editorconfig.language.messages.EditorConfigWrongFileNameNotificationProvider"/>
<editorNotificationProvider implementation="org.editorconfig.language.messages.EditorConfigWrongFileEncodingNotificationProvider"/>
<fileBasedIndex implementation="org.editorconfig.language.index.EditorConfigIdentifierIndex"/>
<gotoSymbolContributor implementation="org.editorconfig.language.codeinsight.findusages.EditorConfigGoToSymbolContributor"/>
<statusBarWidgetProvider implementation="org.editorconfig.language.widget.EditorConfigStatusBarWidgetProvider"/>
<gotoTargetRendererProvider
implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigGotoTargetRendererProvider"/>
<definitionsScopedSearch
implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigHeaderImplementationSearch"/>
<definitionsScopedSearch
implementation="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigFlatOptionKeyImplementationSearch"/>
<targetElementEvaluator
language="editorconfig"
implementationClass="org.editorconfig.language.psi.reference.EditorConfigTargetElementEvaluator"/>
<!-- Inspections -->
<lang.inspectionSuppressor
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.suppression.EditorConfigInspectionSuppressor"/>
<localInspection
language="editorconfig"
shortName="EditorConfigDeprecatedDescriptor"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.element.deprecated.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigDeprecatedDescriptorInspection"/>
<!-- Root declaration inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigRootDeclarationUniqueness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.root-declaration.uniqueness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigRootDeclarationUniquenessInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigRootDeclarationCorrectness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.root-declaration.correctness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigRootDeclarationCorrectnessInspection"/>
<!-- Section inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigEmptySection"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.section.emptiness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigEmptySectionInspection"/>
<!-- Header inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigHeaderUniqueness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.section.uniqueness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigHeaderUniquenessInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigPatternEnumerationRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.pattern-enumeration.redundant.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPatternEnumerationRedundancyInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigSpaceInHeader"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.space.in.header.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigSpaceInHeaderInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigNoMatchingFiles"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.no-matching-files.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigNoMatchingFilesInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigNumerousWildcards"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.header.many.wildcards.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigNumerousWildcardsInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigEmptyHeader"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.header.empty.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigEmptyHeaderInspection"/>
<!-- Pattern inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigPatternRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.pattern.redundant.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPatternRedundancyInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigWildcardRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.pattern.double-asterisk-sibling.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigWildcardRedundancyInspection"/>
<!-- Charclass inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigCharClassLetterRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.charclass.duplicate.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigCharClassLetterRedundancyInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigCharClassRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.charclass.redundant.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigCharClassRedundancyInspection"/>
<!-- Option inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigShadowedOption"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.option.shadowed.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigShadowedOptionInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigShadowingOption"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.option.shadowing.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigShadowingOptionInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigOptionRedundancy"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.option.redundant.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigOptionRedundancyInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigSuspiciousLineBreak"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.option.suspicious.line.break.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigSuspiciousLineBreakInspection"/>
<!-- Key inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigKeyCorrectness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.key.correctness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigKeyCorrectnessInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigDanglingKey"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.key.dangling.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigDanglingKeyInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigDanglingDot"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.key.dangling-dot.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigDanglingDotInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigMultipleDots"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.key.multiple-dots.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigMultipleDotsInspection"/>
<!-- Value inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigValueCorrectness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.value.correctness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigValueCorrectnessInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigValueUniqueness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.value.uniqueness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigValueUniquenessInspection"/>
<!-- Reference inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigReferenceCorrectness"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.reference.correctness.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigReferenceCorrectnessInspection"/>
<!-- Declaration inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigUnusedDeclaration"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.declaration.unused.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="WARNING"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigUnusedDeclarationInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigMissingRequiredDeclaration"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.declaration.missing.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigMissingRequiredDeclarationInspection"/>
<!-- Values list inspections -->
<localInspection
language="editorconfig"
shortName="EditorConfigListAcceptability"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.value.list.acceptability.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigListAcceptabilityInspection"/>
<localInspection
language="editorconfig"
shortName="EditorConfigUnexpectedComma"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.value.list.comma.unexpected.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigUnexpectedCommaInspection"/>
<!-- Values pair inspection -->
<localInspection
language="editorconfig"
shortName="EditorConfigPairAcceptability"
bundle="org.editorconfig.language.messages.EditorConfigBundle"
key="inspection.value.pair.acceptability.name"
groupKey="editorconfig.inspection.group"
enabledByDefault="true"
level="ERROR"
implementationClass="org.editorconfig.language.codeinsight.inspections.EditorConfigPairAcceptabilityInspection"/>
<!-- Intention actions -->
<intentionAction>
<className>org.editorconfig.language.codeinsight.actions.intention.EditorConfigInvertValueIntention</className>
<category>EditorConfig</category>
</intentionAction>
<intentionAction>
<className>org.editorconfig.language.codeinsight.actions.intention.EditorConfigAddDeclarationPartIntention</className>
<category>EditorConfig</category>
</intentionAction>
<!-- Services -->
<applicationService
serviceInterface="org.editorconfig.language.services.EditorConfigOptionDescriptorManager"
serviceImplementation="org.editorconfig.language.services.impl.EditorConfigOptionDescriptorManagerImpl"/>
<projectService
serviceInterface="org.editorconfig.language.services.EditorConfigElementFactory"
serviceImplementation="org.editorconfig.language.services.impl.EditorConfigElementFactoryImpl"/>
<projectService
serviceInterface="org.editorconfig.language.services.EditorConfigFileHierarchyService"
serviceImplementation="org.editorconfig.language.services.impl.EditorConfigFileHierarchyServiceImpl"/>
</extensions>
</idea-plugin>
<extensions defaultExtensionNs="com.intellij.lang">
<syntaxHighlighterFactory
language="editorconfig"
implementationClass="org.editorconfig.language.highlighting.EditorConfigSyntaxHighlighterFactory"/>
<parserDefinition
language="editorconfig"
implementationClass="org.editorconfig.language.parser.EditorConfigParserDefinition"/>
<braceMatcher
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.EditorConfigBraceMatcher"/>
<commenter
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.EditorConfigCommenter"/>
<foldingBuilder
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.EditorConfigFoldingBuilder"/>
<formatter
language="editorconfig"
implementationClass="org.editorconfig.language.formatting.EditorConfigFormattingModelBuilder"/>
<psiStructureViewFactory
language="editorconfig"
implementationClass="org.editorconfig.language.structureview.EditorConfigStructureViewFactory"/>
<elementManipulator
forClass="org.editorconfig.language.psi.EditorConfigHeader"
implementationClass="org.editorconfig.language.psi.EditorConfigSilentElementManipulator"/>
<elementManipulator
forClass="org.editorconfig.language.psi.interfaces.EditorConfigDescribableElement"
implementationClass="org.editorconfig.language.psi.EditorConfigSilentElementManipulator"/>
<findUsagesProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.findusages.EditorConfigFindUsagesProvider"/>
<documentationProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.documentation.EditorConfigDocumentationProvider"/>
<tokenSeparatorGenerator
language="editorconfig"
implementationClass="org.editorconfig.language.psi.EditorConfigTokenSeparatorGenerator"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.codeInsight">
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverridingKeyLineMarkerProvider"/>
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverriddenKeyLineMarkerProvider"/>
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigPartiallyOverridingHeaderFinder"/>
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigPartiallyOverriddenHeaderFinder"/>
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverridingHeaderFinder"/>
<lineMarkerProvider
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.linemarker.EditorConfigOverriddenHeaderFinder"/>
<gotoSuper
language="editorconfig"
implementationClass="org.editorconfig.language.codeinsight.actions.navigation.EditorConfigGotoSuperHandler"/>
</extensions>
<extensions defaultExtensionNs="editorconfig">
<optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigBasicOptionDescriptorProvider"/>
<optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigRoslynOptionDescriptorProvider"/>
<optionDescriptorProvider implementation="org.editorconfig.language.extensions.impl.EditorConfigReSharperOptionDescriptorProvider"/>
</extensions>
<extensionPoints>
<extensionPoint
qualifiedName="editorconfig.optionDescriptorProvider"
interface="org.editorconfig.language.extensions.EditorConfigOptionDescriptorProvider"/>
</extensionPoints>
</idea-plugin>

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 703 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 722 B

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports duplicate characters in the sections file wildcard pattern.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports the file wildcard patterns with charclasses which have less than two symbols.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports dots at the end on the property.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports properties that miss a value.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports deprecated properties.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports sections which have an empty file wildcard pattern.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports sections which dont have any properties.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports sections which match the same file patterns.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports unknown property values.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports lists of values that can't be used in current context.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports declarations that miss required parts.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports successive dots used in the property name which are likely to be a typo.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports sections which dont match any files in the project.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports sections taht contain too many wildcards. They might lead to performance issues.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports options that override other options but have the same properties and values.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports pairs of values that can't be used in current context.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports pattern enumerations that contain only one possible pattern.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports redundancy in patterns.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports invalid referenced identifiers.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports unexpected top-level declarations.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Checks that an EditorConfig file has only one top-level declaration.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports properties which don't affect the resulting code style.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports properties that disable any other properties declared earlier in the file.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports any suspicious spaces in the sections file wildcard pattern. Even though spaces can be used in the wildcard patterns, they are likely to be a typo.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports any line breaks inside the property.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports any commas that are not allowed in the current context.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports unused declarations.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports any unexpected values.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports repeated values in the list of the prohibited value repetitions.
</body>
</html>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Reports wildcard patterns that could be safely removed.
</body>
</html>

View File

@@ -0,0 +1,3 @@
[{*.kt, *.kts}]
dotnet_naming_rule.my_rule.severity = warning
dotnet_naming_rule.my_rule.<spot>symbols</spot> = <spot>value</spot>

View File

@@ -0,0 +1,2 @@
[{*.kt, *.kts}]
dotnet_naming_rule.<spot>my_rule</spot>.severity = warning

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Starts live template for insertion one more part of variable
</body>
</html>

View File

@@ -0,0 +1,2 @@
[{*.kt, *.kts}]
insert_final_newline=<spot>true</spot>

View File

@@ -0,0 +1,2 @@
[{*.kt, *.kts}]
insert_final_newline=<spot>false</spot>

View File

@@ -0,0 +1,6 @@
<!-- Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<html>
<body>
Changes value to the opposite in options with two possible values. Only modifies one occurrence.
</body>
</html>

View File

@@ -0,0 +1,351 @@
{
"$id": "intellij-community/plugins/editorconfig/resources/schemas/descriptorFileFormat.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "array",
"items": {
"$ref": "#/definitions/option"
},
"definitions": {
"option": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "option"
},
"key": {
"$ref": "#/definitions/descriptor"
},
"value": {
"$ref": "#/definitions/descriptor"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"key",
"value"
]
},
"descriptor": {
"oneOf": [
{
"$ref": "#/definitions/list"
},
{
"$ref": "#/definitions/union"
},
{
"$ref": "#/definitions/constant"
},
{
"$ref": "#/definitions/pair"
},
{
"$ref": "#/definitions/std"
},
{
"$ref": "#/definitions/type_alias"
},
{
"$ref": "#/definitions/qualified"
},
{
"$ref": "#/definitions/declaration"
},
{
"$ref": "#/definitions/reference"
}
]
},
"list": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "list"
},
"values": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "#/definitions/constant"
},
{
"$ref": "#/definitions/union"
},
{
"$ref": "#/definitions/std"
},
{
"$ref": "#/definitions/type_alias"
}
]
},
"minLength": 2
},
"min_length": {
"type": "integer",
"minimum": 0,
"default": 0
},
"allow_repetitions": {
"type": "boolean",
"default": false
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"values"
]
},
"union": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "union"
},
"values": {
"type": "array",
"items": {
"$ref": "#/definitions/descriptor"
},
"minLength": 2
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"values"
]
},
"constant": {
"oneOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "constant"
},
"value": {
"type": "string"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"value"
]
}
]
},
"pair": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "pair"
},
"first": {
"$ref": "#/definitions/descriptor"
},
"second": {
"$ref": "#/definitions/descriptor"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"first",
"second"
]
},
"std": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "number|string"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type"
]
},
"type_alias": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "^(?!option|list|union|constant|pair|number|string|qualified|declaration|reference).*$"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type"
]
},
"qualified": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "qualified"
},
"values": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "#/definitions/constant"
},
{
"$ref": "#/definitions/union"
},
{
"$ref": "#/definitions/declaration"
}
]
},
"minLength": 2
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"values"
],
"description": "It is highly not recommended to use this elsewhere from option.key"
},
"declaration": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "declaration"
},
"id": {
"type": "string"
},
"needs_references": {
"type": "boolean",
"default": true
},
"required": {
"type": "boolean",
"default": false
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"id"
]
},
"reference": {
"type": "object",
"properties": {
"type": {
"type": "string",
"pattern": "reference"
},
"id": {
"type": "string"
},
"documentation": {
"type": "string"
},
"deprecated": {
"type": "string"
},
"type_alias": {
"$ref": "#/definitions/type/alias"
}
},
"required": [
"type",
"id"
]
}
}
}

View File

@@ -0,0 +1,176 @@
[
{
"type": "option",
"key": {
"type": "constant",
"value": "indent_size",
"documentation": "number of whitespace symbols used for indents"
},
"value": {
"type": "union",
"values": [
{
"type": "number"
},
{
"type": "constant",
"value": "tab",
"documentation": "use number of spaces equal to the width of a single tab character"
}
]
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "indent_style",
"documentation": "symbols used for indents"
},
"value": {
"type": "union",
"values": [
{
"type": "constant",
"value": "space",
"documentation": "use spaces for indents"
},
{
"type": "constant",
"value": "tab",
"documentation": "use tabs for indents"
}
]
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "tab_width",
"documentation": "width of a single tab character (\\t)"
},
"value": {
"type": "number"
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "end_of_line",
"documentation": "line ending file format"
},
"value": {
"type": "union",
"values": [
{
"type": "constant",
"value": "cr",
"documentation": "use classic mac line endings (\\r)"
},
{
"type": "constant",
"value": "lf",
"documentation": "use linux-style line endings (\\n)"
},
{
"type": "constant",
"value": "crlf",
"documentation": "use windows-style line endings (\\r\\n)"
}
]
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "charset",
"documentation": "file character encoding"
},
"value": {
"type": "union",
"values": [
{
"type": "constant",
"value": "utf-8",
"documentation": "8-bit encoding, most efficient for ASCII symbols"
},
{
"type": "constant",
"value": "utf-8-bom",
"documentation": "use utf-8, also insert byte order mark, which states endianness",
"deprecated": "It is not recommended to use this option in {0}"
},
{
"type": "constant",
"value": "latin1",
"documentation": "ISO-8859-1, 191 characters from the Latin script"
},
{
"type": "constant",
"value": "utf-16be",
"documentation": "use 2 or 4 bytes for every character and encode as big-endian machine"
},
{
"type": "constant",
"value": "utf-16le",
"documentation": "use 2 or 4 bytes for every character and encode as little-endian machine"
}
]
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "trim_trailing_whitespace",
"documentation": "denotes whether whitespace is allowed at the end of lines"
},
"value": {
"type": "union",
"type_alias": "boolean",
"values": [
{
"type": "constant",
"value": "true",
"documentation": "true"
},
{
"type": "constant",
"value": "false",
"documentation": "false"
}
]
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "insert_final_newline",
"documentation": "denotes whether file should end with a newline"
},
"value": {
"type": "boolean"
}
},
{
"type": "option",
"key": {
"type": "constant",
"value": "max_line_length",
"documentation": "Forces hard line wrapping after the amount of characters specified. \"off\" to turn off this feature (use the editor settings)."
},
"value": {
"type": "union",
"values": [
"off",
{
"type": "number"
}
]
}
}
]

View File

@@ -0,0 +1,69 @@
[
{
"type": "option",
"key": {
"type": "union",
"values": [
"csharp_type_declaration_braces",
"resharper_csharp_type_declaration_braces"
]
},
"value": {
"type": "union",
"type_alias": "braces_layout",
"values": [
{
"type": "constant",
"value": "end_of_line",
"documentation": "At end of line (K&R style)"
},
{
"type": "constant",
"value": "end_of_line_no_space",
"documentation": "At end of line (no space)"
},
{
"type": "constant",
"value": "next_line",
"documentation": "At next line (BSD style)"
},
{
"type": "constant",
"value": "next_line_shifted",
"documentation": "At next line indented (Whitesmiths style)"
},
{
"type": "constant",
"value": "next_line_shifted_2",
"documentation": "At next line indented 2 (GNU style)"
}
]
}
},
{
"type": "option",
"key": {
"type": "union",
"values": [
"csharp_brace_style",
"resharper_csharp_brace_style"
]
},
"value": {
"type": "braces_layout"
}
},
{
"type": "option",
"key": {
"type": "union",
"values": [
"type_declaration_braces",
"resharper_type_declaration_braces"
]
},
"value": {
"type": "braces_layout"
}
}
]

View File

@@ -0,0 +1,319 @@
[
{
"type": "option",
"key": "dotnet_style_qualification_for_field",
"value": {
"type": "pair",
"first": {
"type": "union",
"type_alias": "boolean",
"values": [
{
"type": "constant",
"value": "true",
"documentation": "true"
},
{
"type": "constant",
"value": "false",
"documentation": "false"
}
]
},
"second": {
"type": "union",
"type_alias": "severity",
"values": [
{
"type": "constant",
"value": "none",
"documentation": "When this style is not being followed, do not show anything to the user; however, auto-generated code follows this style."
},
{
"type": "constant",
"value": "silent",
"documentation": "When this style is not being followed, do not show anything to the user; however, auto-generated code follows this style."
},
{
"type": "constant",
"value": "suggestion",
"documentation": "When this style is not being followed, show it to the user as a suggestion, as underlying dots on the first two characters. It has no effect at compile time."
},
{
"type": "constant",
"value": "warning",
"documentation": "When this style is not being followed, show a compiler warning in the Error List."
},
{
"type": "constant",
"value": "error",
"documentation": "When this style is not being followed, show a compiler error in the Error List."
}
]
}
}
},
{
"type": "option",
"key": "csharp_new_line_before_open_brace",
"value": {
"type": "pair",
"first": {
"type": "union",
"values": [
"all",
"none",
{
"type": "list",
"values": [
"accessors",
"anonymous_methods",
"anonymous_types",
"control_blocks",
"events",
"indexers",
"lambdas",
"local_functions",
"namespace",
{
"type": "union",
"values": [
"method",
"methods"
]
},
"object_collection",
"properties",
"types"
]
}
]
},
"second": {
"type": "severity"
}
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_rule",
{
"type": "declaration",
"id": "rule",
"needs_references": false,
"required": true
},
"severity"
]
},
"value": {
"type": "severity"
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_rule",
{
"type": "declaration",
"id": "rule",
"needs_references": false,
"required": true
},
"symbols"
]
},
"value": {
"type": "reference",
"id": "symbol"
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_rule",
{
"type": "declaration",
"id": "rule",
"needs_references": false,
"required": true
},
"style"
]
},
"value": {
"type": "reference",
"id": "style"
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_symbols",
{
"type": "declaration",
"id": "symbol",
"required": true
},
"applicable_kinds"
]
},
"value": {
"type": "union",
"values": [
"*",
{
"type": "list",
"values": [
"class",
"struct",
"interface",
"enum",
"property",
"method",
"field",
"event",
"delegate",
"parameter"
]
}
]
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_symbols",
{
"type": "declaration",
"id": "symbol"
},
"applicable_accessibilities"
]
},
"value": {
"type": "union",
"values": [
"*",
{
"type": "list",
"values": [
"public",
{
"type": "union",
"values": [
"internal",
"friend"
]
},
"private",
"protected",
{
"type": "union",
"values": [
"protected_internal",
"protected_friend"
]
}
]
}
]
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_symbols",
{
"type": "declaration",
"id": "symbol"
},
"required_modifiers"
]
},
"value": {
"type": "list",
"values": [
{
"type": "union",
"values": [
"abstract",
"must_inherit"
]
},
"async",
"const",
"readonly",
{
"type": "union",
"values": [
"static",
"shared"
]
}
]
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_style",
{
"type": "declaration",
"id": "style"
},
{
"type": "union",
"values": [
"required_prefix",
"required_suffix",
"word_separator"
]
}
]
},
"value": {
"type": "string"
}
},
{
"type": "option",
"key": {
"type": "qualified",
"values": [
"dotnet_naming_style",
{
"type": "declaration",
"id": "style",
"required": true
},
"capitalization"
]
},
"value": {
"type": "union",
"values": [
"pascal_case",
"camel_case",
"first_word_upper",
"all_upper",
"all_lower"
]
}
}
]

View File

@@ -15,4 +15,6 @@ public final class EditorconfigIcons {
}
public static final Icon Editorconfig = load("/icons/editorconfig.png"); // 16x16
public static final Icon PartiallyOverridden = load("/icons/partiallyOverridden.png"); // 12x12
public static final Icon PartiallyOverriding = load("/icons/partiallyOverriding.png"); // 12x12
}

Some files were not shown because too many files have changed in this diff Show More