Commit Graph

  • 4f0e55a909 add implicit enum methods values() and valueOf() Dave Holoway 2020-06-22 15:47:26 +01:00
  • fbb275600a check castability using type assignments Dave Holoway 2020-06-22 14:41:32 +01:00
  • 4fc616daa1 ensure tokens are assigned for qualified expressions Dave Holoway 2020-06-22 13:03:28 +01:00
  • df210b4659 add checks for unary operators Dave Holoway 2020-06-22 11:09:50 +01:00
  • 491086a750 remove return type for source constructors Dave Holoway 2020-06-21 21:36:56 +01:00
  • 43c701adc8 add support for this() and super() constructor calls Dave Holoway 2020-06-21 21:29:03 +01:00
  • 153a6e869b improve method call resolving Dave Holoway 2020-06-21 18:52:41 +01:00
  • 6badc9fdb6 implement method body and ststement validation Dave Holoway 2020-06-21 13:47:56 +01:00
  • a034a90735 support package name as a resolved value Dave Holoway 2020-06-19 11:08:02 +01:00
  • 82e660eabc improve checking of number literals Dave Holoway 2020-06-18 18:39:41 +01:00
  • 9be298293f rename ResolvedType to ResolvedValue Dave Holoway 2020-06-18 17:22:17 +01:00
  • 7fd7809be3 improve validation of binary operators Dave Holoway 2020-06-18 17:12:18 +01:00
  • f4743e456b validate array indexes Dave Holoway 2020-06-18 15:57:30 +01:00
  • 1255a15bba validate array literals Dave Holoway 2020-06-18 15:45:34 +01:00
  • f05b34171c add new array validation Dave Holoway 2020-06-18 14:54:12 +01:00
  • d869afe2fa improve reporting of unresolved identifiers Dave Holoway 2020-06-18 13:16:39 +01:00
  • c1f2ccdc4a allow assigns for assignable type arguments Dave Holoway 2020-06-18 12:45:04 +01:00
  • b143772b26 check for valid type in class member expressions Dave Holoway 2020-06-18 12:35:21 +01:00
  • 0f296379c6 add type cast checking Dave Holoway 2020-06-18 12:24:16 +01:00
  • 2da127edc0 implement resolveExpression Dave Holoway 2020-06-18 11:46:42 +01:00
  • 13cdd1e0bc support token extraction in expressions Dave Holoway 2020-06-17 15:37:30 +01:00
  • 3c505b05be remove some parse checks that should be in verify Dave Holoway 2020-06-17 13:50:14 +01:00
  • 458d8e553e rename source types module Dave Holoway 2020-06-17 13:09:50 +01:00
  • 4f62b5a06e remove Value class, add NewExpression and separate out Any classes Dave Holoway 2020-06-17 13:00:04 +01:00
  • b9fd805a6d extract literals into separate files Dave Holoway 2020-06-17 12:14:48 +01:00
  • 29e6132cac fix type warnings Dave Holoway 2020-06-17 11:30:20 +01:00
  • d85f49546a extract statement types into separate files Dave Holoway 2020-06-17 11:26:48 +01:00
  • 143a31b0c4 extract expression types into separate files Dave Holoway 2020-06-17 11:07:57 +01:00
  • 1c8eb75b4f fix resolving imported enclosed types Dave Holoway 2020-06-17 00:09:49 +01:00
  • fe28924e0c parse try-with-resources Dave Holoway 2020-06-16 23:47:16 +01:00
  • dc39ae53b1 add hex exponent support Dave Holoway 2020-06-16 22:40:55 +01:00
  • 9d4e8ab7d0 remove this qualifier from isCastExpression Dave Holoway 2020-06-16 22:31:22 +01:00
  • ecf67d44c0 import types from same package Dave Holoway 2020-06-16 22:25:58 +01:00
  • 198317a5c2 add support for static member imports Dave Holoway 2020-06-16 20:22:19 +01:00
  • bccc29251c allow null scope in findIdentifier Dave Holoway 2020-06-16 18:55:14 +01:00
  • e88475dddd fix bad imports when resolving annotations Dave Holoway 2020-06-16 18:51:00 +01:00
  • 8df1a3464b fix resolving of class type variables Dave Holoway 2020-06-16 18:50:35 +01:00
  • 26e54bba37 update typemap declarations to use CEIType instead of JavaType Dave Holoway 2020-06-16 18:21:14 +01:00
  • b61ef125fc don't report missing constructors if superclass has none Dave Holoway 2020-06-16 18:01:32 +01:00
  • 6af16cac43 allow empty enums Dave Holoway 2020-06-16 17:51:31 +01:00
  • 9017752d7b allow super as a member qualifier Dave Holoway 2020-06-16 17:43:59 +01:00
  • 58ff585a9d implement specialisation of SourceType Dave Holoway 2020-06-16 17:41:01 +01:00
  • 46838686ea ignore unresolved types in extends/implements Dave Holoway 2020-06-16 16:01:21 +01:00
  • 9ac6086bad add support for parsing parameterless lambdas Dave Holoway 2020-06-16 15:42:48 +01:00
  • 8b71037a58 include enclosing types in identifier search Dave Holoway 2020-06-16 15:05:17 +01:00
  • eeb6d7c3d0 allow uppercase 0X in hex literals Dave Holoway 2020-06-16 13:58:45 +01:00
  • f74f4b26c6 add support for parsing enum values Dave Holoway 2020-06-16 13:57:08 +01:00
  • b050f3a82d start separating validation from parsing Dave Holoway 2020-06-16 12:59:08 +01:00
  • 1801a81c0f allow trailing comma for array literals Dave Holoway 2020-06-15 17:30:17 +01:00
  • 14582503da remove local modifier validation during parse add parameter modifier checking to validation Dave Holoway 2020-06-15 17:16:39 +01:00
  • 4af183e4e1 report errors from unit parsing Dave Holoway 2020-06-15 16:58:45 +01:00
  • a8653f26df fix checking of array literal compatability Dave Holoway 2020-06-15 16:57:00 +01:00
  • 2f3349c359 fix support for resolving type variables in method declarations Dave Holoway 2020-06-15 16:07:23 +01:00
  • 549473d765 generate source types before parsing Dave Holoway 2020-06-15 14:34:29 +01:00
  • 01ae51d91a replace regex parsing with linear parsing Dave Holoway 2020-06-15 11:15:25 +01:00
  • 18d56e0bc0 refactor to allow expressions to have a type scope Dave Holoway 2020-06-13 16:47:59 +01:00
  • da8d37aafd update to use new set of SourceX classes Dave Holoway 2020-06-13 15:16:35 +01:00
  • f4a18ebcdc initial changes to support local type declarations Dave Holoway 2020-06-12 14:32:11 +01:00
  • c70b75783e replace Locals with scopeable MethodDeclarations to allow labels and types to be stored Dave Holoway 2020-06-12 13:32:15 +01:00
  • ac9a7ed43a refactor in preparation for parsing local types Dave Holoway 2020-06-11 18:06:44 +01:00
  • d0308781f7 add missng strictfp modifier Dave Holoway 2020-06-11 15:54:20 +01:00
  • 974ec93841 fix type checking of field and method declarations Dave Holoway 2020-06-11 15:50:55 +01:00
  • c454753385 improve reporting of unresolved type errors Dave Holoway 2020-06-11 15:00:26 +01:00
  • 3ab97ef235 improve modifier checks for interface types Dave Holoway 2020-06-11 14:40:34 +01:00
  • 5b29b9998d add support for generic inferred-type arguments Dave Holoway 2020-06-11 13:44:59 +01:00
  • 90c537b82d refactor new term qualifiers Dave Holoway 2020-06-10 23:41:41 +01:00
  • cd725638cd parse labels and break/continue targets Dave Holoway 2020-06-10 18:43:43 +01:00
  • 87a2d72ae3 improve assert statement support Dave Holoway 2020-06-10 16:29:23 +01:00
  • c9ab48031e update isCallCompatible to handle variable arity calls Dave Holoway 2020-06-10 16:09:43 +01:00
  • dd9d23c64a tidy array constructors and fix some warnings Dave Holoway 2020-06-10 15:11:16 +01:00
  • b175b52065 make variable arity parameters an array type Dave Holoway 2020-06-10 14:50:40 +01:00
  • 6dffe61d62 don't require default interface methods to be implemented Dave Holoway 2020-06-10 13:22:37 +01:00
  • 309cc47107 specialise methods with type variables Dave Holoway 2020-06-10 11:57:16 +01:00
  • 41adfbe53e initial attempt to support type variable arguments in methods Dave Holoway 2020-06-09 15:01:58 +01:00
  • 74a21ecbf8 add type variables to SourceMethod Dave Holoway 2020-06-09 12:51:43 +01:00
  • 252b476147 post-name array qualifiers in method decls Dave Holoway 2020-06-09 12:05:25 +01:00
  • 74a0339962 add support for post-name array qualifiers in fields and parameters Dave Holoway 2020-06-08 22:50:30 +01:00
  • 426735aa25 update ResolvableType to use same type resolving as method body parsing Dave Holoway 2020-06-08 21:02:34 +01:00
  • 7c9acfd7ca pass scoped type instead of method to typeIdent Dave Holoway 2020-06-08 16:18:49 +01:00
  • 261abb9cc7 add support for array qualifiers in type identifiers Dave Holoway 2020-06-08 16:02:30 +01:00
  • 1b1202598c refactor to prepare for merging with type parsing Dave Holoway 2020-06-08 15:52:03 +01:00
  • c09620c481 add SourceInitialiser support Dave Holoway 2020-06-08 13:53:24 +01:00
  • 3a85c6f819 treat default and synchronized as modifiers Dave Holoway 2020-06-08 13:04:57 +01:00
  • 6fd6376dea re-add throws as a keyword Dave Holoway 2020-06-08 12:40:39 +01:00
  • 04c0e97c81 reuse parsed tokens instead of tokenizing each method body Dave Holoway 2020-06-08 12:30:31 +01:00
  • bbc6007338 make type parser and body parser use same tokenizer Dave Holoway 2020-06-08 11:45:01 +01:00
  • 930237359e allow unicode char literals Dave Holoway 2020-06-08 00:44:20 +01:00
  • c16bb1b30a support assert statement Dave Holoway 2020-06-08 00:31:33 +01:00
  • f14d70feb6 map primitive types to their boxed versions for class member Dave Holoway 2020-06-08 00:07:35 +01:00
  • 67c1fc9db6 allow unicode characters, $ and _ in identifiers Dave Holoway 2020-06-07 23:50:51 +01:00
  • 49b5480870 allow generic types to be assigned to inherited types with compatible type arguments Dave Holoway 2020-06-07 22:52:37 +01:00
  • 6bcdecee07 fix parse issue with nested generic types Dave Holoway 2020-06-07 22:38:18 +01:00
  • a4be37d872 initial support for wildcard type arguments Dave Holoway 2020-06-07 21:31:11 +01:00
  • 6ef64b1d9c make default a modifer keyword for interface default method support Dave Holoway 2020-06-07 16:22:38 +01:00
  • 4750212484 improve invalid array expression message add AnyType array element to prevent cascading errors Dave Holoway 2020-06-07 15:59:12 +01:00
  • 20831c2326 make sure any long specifier is stripped from a bigint value Dave Holoway 2020-06-07 15:46:08 +01:00
  • fc9d58b9da add support for array qualifiers after a variable name Dave Holoway 2020-06-07 15:40:28 +01:00
  • c56732c689 allow character literals to be assigned to number types Dave Holoway 2020-06-07 15:22:12 +01:00
  • ebc5f73bcc use better regex for string literals Dave Holoway 2020-06-07 15:17:54 +01:00
  • 7d6af70ae1 allow null to be cast to any non-primitve Dave Holoway 2020-06-07 15:12:43 +01:00