Releases: TeamworkGuy2/JParseCode
Releases · TeamworkGuy2/JParseCode
JParseCode 0.18.0
Changed
- Added
-debug
and-threads #
command line arguments - More detailed debug and log file information
- Renamed
TokenizeStepLogger
->ParserActionLogger
ParseTimes.log()
renamedsetActionTime()
- Simplified and synchronized
PerformanceTrackers
so instance can be shared across threads - Renamed node.js plugin file
plugins/node-js/jparser-tools-cli
->plugins/node-js/jparse-code-cli
and renamed associated test file
Removed
- Unused
ScopeType
enum
Fixed
- Fixed multi-threaded parsing! Handling of FileReadUtil, performance logs, and result lists are now synchronized in
ParserMisc.parseFileSet()
- Update dependency jfile-io@0.8.3 (fix for decoding empty streams/files)
JParseCode 0.17.0
Performance refactor, several libraries updated: JArrays, JCollectionUtil, JFileIo, JTextParser, and JTextTokenizer
Changed
- Changed to new
FileReadUtil.readChars(InputStream)
(jfile-io@0.8.2
) - Switched lombok
val
usage to Java 9var
- Added
HashMap<String, *Keyword> keywordSet
field toCsKeyword
andJavaKeyword
for performance - Added some duplicate code in
IdentifierTokenizer
to work with optimizedCharConditions.ContainsFirstSpecial
constructor
JParseCode 0.16.1
Fixed
- Accidentally deleted compiled *.jar files in 0.16.0 release
JParseCode 0.16.0
Added
- Class signature annotation parsing (in
BlockExtractor
,CsBlockParser
, andJavaBlockParser
)
Changed
- Simplified
ProjectClassSet
(removed two unnecessary generic parameters, renamed private fields):- Renamed
resolveSimpleNameToClass()
->resolveClassNameAgainstNamespaces()
- Renamed
resolveSimpleNameToClassSingleNamespace()
->resolveClassNameAgainstNamespace()
- Renamed
- Performance improvements to collection allocations in
NameUtil
andClassSigResolver
- Renamed
AccessModifier
interface toKeyword
PerformanceTrackers.getTopParseTimes()
andgetTopParseStepDetails()
switched first parameter fromjavax.swing.SortOrder
toboolean
Removed
- Unused
AstNodeConsumer
andAstNodePredicate
interfaces - Removed lombok.val usage/dependency from several classes and packages in favor of Java 10
var
or actual type.
Fixed
- Bug in TokenizeStepLogger trying to
StringCase.toCamelCase()
action names
JParseCode 0.15.7
Changed
- Updated
CodeTokenizerBuilder.removeChildren()
to useSimpleTreeImpl.removeChildRef()
instead ofremoveChild()
for improved performance - Updated dependencies:
- jcollection-interfaces@0.3.0
- jcollection-util@0.7.5
- jtree-walker@0.2.0
JParseCode 0.15.6
Added
- Parameter default value parsing support added to
MethodParametersParser
- Added
DataTypeExtractor.isDefaultValueLiteral()
to check for field/parameter default values
Changed
- Renamed
CsKeyword.Inst
->CsKeyword.CsKeywordUtil
- Renamed
JavaKeyword.Inst
->JavaKeyword.JavaKeywordUtil
- Unit tests changed to use static imports of
TypeAssert.ary()
instead ofnew Object[] {...}
andTypeAssert.ls()
instead ofArrays.asList()
JParseCode 0.15.5
Changed
ParserWorkFlow
returns the-help
message if no arguments are given when run
Fixed
bin/jparse_code.jar
wasn't properly compiled as a runnable jar
JParseCode 0.15.4
Added
- Annotations to parameter signatures (with basic parameter annotation parsing added to
MethodParametersParser.extractParamsFromSignature()
) - Documented DataTypeExtractor methods
- Added/Improved test cases for:
- Class signatures (generics, multiple extend/implement types)
- Generic types with multiple parameters
- Annotations on method parameters
- TODO: fix failing test for default parameters
Removed
- Old code from MainParser
Fixed
CsBlockParser.readClassIdentifierAndExtends()
was incorrectly trying to parsenew {
object initializer blocks as class declarationsDataTypeExtractor
was reversing the parameter order of multi-paremeter generic types
JParseCode 0.15.3
Changed
- Update dependency
jtwg2-logging@0.3.0
JParseCode 0.15.2
Changed
- Upgrade to Java 9
- Upgrade to JUnit 5
Fixed
- Fix a minor compile issue found by Java 9 upgrade