Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance implementation of types #556

Closed
dzikoysk opened this issue Aug 20, 2020 · 1 comment · Fixed by #558
Closed

Enhance implementation of types #556

dzikoysk opened this issue Aug 20, 2020 · 1 comment · Fixed by #558

Comments

@dzikoysk
Copy link
Member

@dzikoysk
Copy link
Member Author

dzikoysk commented Aug 21, 2020

 Usages
   type Bar<T> : Foo<T, Bar> # type declaration
   List<Foo> list = new ArrayList<>() # variable and constructor
   shared test <T> (T type) -> T { } # method

 Type [metadata]
   |
   |---- Field [member & metadata]
   |       |-- getSignature -> return type signature
   |       |-- getType -> member type
   |
   |---- Constructor [member & metadata]
   |       |-- getSignature -> return type signature
   |       |-- getType -> member type
   |       |-- getParameterTypes -> parameter signatures
   |    (scope)
   |    (frame)
   |
   |---- Method [member & metadata]
   |       |-- getSignature -> return type signature
   |       |-- getType -> member type
   |       |-- getParameterTypes -> parameter signatures
   |    (scope)
   |    (frame)
   |

dzikoysk added a commit that referenced this issue Aug 26, 2020
@dzikoysk dzikoysk linked a pull request Aug 27, 2020 that will close this issue
dzikoysk added a commit that referenced this issue Sep 28, 2020
… either type or abstract identifier and move tests to the Groovy directory
dzikoysk added a commit that referenced this issue Sep 30, 2020
# Conflicts:
#	panda-utilities/pom.xml
#	pom.xml
dzikoysk added a commit that referenced this issue Sep 30, 2020
dzikoysk added a commit that referenced this issue Oct 6, 2020
…en signatures and types, refactor type and module parsers
dzikoysk added a commit that referenced this issue Oct 8, 2020
dzikoysk added a commit that referenced this issue Nov 30, 2020
dzikoysk added a commit that referenced this issue Dec 2, 2020
…pe#isAssignableFrom method, fix conditional parser, for-each parser and try-catch parser, [...]
dzikoysk added a commit that referenced this issue Dec 2, 2020
dzikoysk added a commit that referenced this issue Dec 3, 2020
dzikoysk added a commit that referenced this issue Dec 3, 2020
dzikoysk added a commit that referenced this issue Dec 5, 2020
dzikoysk added a commit that referenced this issue Dec 6, 2020
dzikoysk added a commit that referenced this issue Dec 15, 2020
dzikoysk added a commit that referenced this issue Dec 31, 2020
* GH-556 Cleanup type domain names

* GH-556 Cleanup type domain names and implement part of the Signature metadata

* GH-556 Support equals/hashCode by Result, transform Signature type to either type or abstract identifier and move tests to the Groovy directory

* GH-556 Add AbstractSignature

* GH-556 Rename pipeline to parser pool and improve stage api by stage service

* GH-556 Simplify modules and loading services, improve relations between signatures and types, refactor type and module parsers

* GH-556 Remove some deprecated classes replaced with a new api

* GH-556 Rewrite throw, return, continue and break parsers

* GH-556 Rewrite log parser

* GH-556 Rewrite while and base call parsers

* GH-556 Rewrite number parser

* GH-556 Add block parser abstraction layer for block-related parsers and support localizable entities

* GH-556 Rewrite for parser

* GH-556 Rewrite for-each parser

* GH-556 Rewrite late declaration parser

* GH-556 Rewrite conditional parser

* GH-556 Add basic type generator

* GH-556 Link type generator with type parser

* GH-556 Rewrite try-catch parser

* GH-556 Rewrite standalone-expression parser

* GH-556 Rewrite self constructor parser

* GH-556 Rewrite field parser

* GH-556 Rewrite method parser

* GH-556 Rewrite assignation parsers

* GH-556 Apply changes from ContextParser in its inheritors

* GH-556 Mark as 0.1.4-alpha

* GH-556 Damn boi it compilesss

* GH-556 Add part of the signature matching logic

* GH-556 Apply changes with various signature types

* GH-556 Fix module and type queries, fix panda qualifier reader and pool parser

* GH-556 Fix several bugs in SourceReader, log/field/method/signature/type parsers, restore generator classes, initialize default modules [...]

* GH-556 Fix several bugs related to lazy loaded types

* GH-556 Respect priorities of registered parsers in the pool

* GH-556 Support negation through the 'not' keyword (Resolve #586)

* GH-556 Remove recursive assignation parser, improve signature merging algorithm, [...]

* GH-556 Support autocasts between primitives (Resolve #587)

* GH-556 Use autocasts as a base resource to determine the result of Type#isAssignableFrom method, fix conditional parser, for-each parser and try-catch parser, [...]

* GH-556 Change synchronized-source instead of root source-stream in  SubparsersUtils#readType utility method

* GH-556 Improve require procedure and replace type based autocasts with reference based

* GH-556 Register primitive types in type generator to avoid duplication of generated wrappers

* GH-556 Support retrying of delegated task, fix conditions and improve class generator, [...]

* GH-556 Fix conditional parser, remove old assignation parser, update deprecated unit tests (Fix #589)

* GH-556 Remove expression transactions (Resolve #594)

* GH-556 Remove functional and linear pattern (Resolve #595)

* GH-556 Simplify method and constructor matching, support simple generic type in type signature

* GH-556 Support generic type content like fields, assignation and constructor

* GH-556 Support methods with generic return type

* GH-556 Support parametrized arguments in method calls

* GH-556 Support reassignation of parametrized types

* GH-556 Fix REPL frame and add part of the generics comparison

* GH-556 Support comparison of generic parameters in signatures
dzikoysk added a commit that referenced this issue Jan 5, 2021
dzikoysk added a commit that referenced this issue Jan 5, 2021
# Conflicts:
#	panda-framework/src/main/java/org/panda_lang/language/architecture/module/TypeLoader.java
#	panda-framework/src/main/java/org/panda_lang/language/architecture/type/signature/SignatureMatcher.java
#	panda-framework/src/main/java/org/panda_lang/language/interpreter/source/PandaSourceService.java
#	pom.xml
dzikoysk added a commit that referenced this issue Jan 5, 2021
This reverts commit da44e92, reversing
changes made to be35d8c.
dzikoysk added a commit that referenced this issue Jan 5, 2021
@dzikoysk dzikoysk unpinned this issue Jan 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant