#####standard .git ignore entries#####

## IDE Specific Files ##
org.eclipse.core.resources.prefs
.classpath
.project
.settings
.idea
.externalToolBuilders
.checkstyle
maven-eclipse.xml
workspace

## Compilation Files ##
*.class
**/target
target
target-ide
MANIFEST.MF
**/yang-gen-sal
sli/model/src/main/java

## Misc Ignores (OS specific etc) ##
bin/
dist
*~
*.ipr
*.iml
*.iws
classes
out/
.DS_STORE
.metadata

## antlr4 generated files ##
ExprGrammarBaseListener.java
ExprGrammarLexer.java
ExprGrammarListener.java
ExprGrammarParser.java
ExprGrammar.tokens
ExprGrammarLexer.tokens

# BlackDuck generated file
*.jsonld
blackDuckHubProjectName.txt
blackDuckHubProjectVersionName.txt

# Derby log
derby.log

# Generated file
sliPluginUtils/provider/testFileName
