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

Look over Description creation, fix a mediocre test. #91

Closed
ghost opened this issue Mar 12, 2013 · 2 comments
Closed

Look over Description creation, fix a mediocre test. #91

ghost opened this issue Mar 12, 2013 · 2 comments
Assignees

Comments

@ghost
Copy link

ghost commented Mar 12, 2013

Once you finish the work outlined in #86, you should take a bit of time to look at description. (If you want / have time on the bus, you could just read some of this code to start~)

Description is how we represent type information about different types. There are Class Descriptors, Field Descriptors, Enumeration Descriptors, and some other kinds~! (Those are the big three we always care about)

I wrote a test about MetaInformation (Annotations and the like) that covers Class/Enumeration/Field Descriptors. You should take a bit of time to get familiar with how all of this stuff works. I'd especially like it if you could add some better validation messages on my asserts on this test:

https://github.com/ecologylab/simplJava/blob/beiber/simplTests/test/simpl/descriptions/beiber/FieldsAndClassesObtainAllMetaInformation.java

I figure you should spend about 30-45 minutes to an hour or two getting a basic feel for how these descriptions work, and how they're created.(If you need more time for a better understanding, that's fine too.) Draw diagrams / etc so you really know how construction of these descriptions works.

Understanding the mapping between classes and descriptions will become really useful later when we do more serialization related work!

Classes of immediate interest:

https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/EnumerationDescriptor.java

https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/FieldDescriptors.java (Handles construction of FieldDescriptor objects)

https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/FieldDescriptorImpl.java

https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/ClassDescriptors.java (Handles construction of ClassDescriptor objects)

https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/ClassDescriptorImpl.java

If you really want to dive deep, feel free to look at a sweet hack I do in the Annotation Parser to get metainfo ;) https://github.com/ecologylab/simplJava/blob/beiber/simplCore/src/simpl/descriptions/AnnotationParser.java

@ghost ghost assigned AndrewKoons Mar 12, 2013
@AndrewKoons
Copy link
Contributor

b647578

@ghost
Copy link
Author

ghost commented Mar 19, 2013

Great work~! Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant