• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

moosetechnology / Famix-Value / 11557114099

28 Oct 2024 03:20PM UTC coverage: 24.281% (-0.9%) from 25.209%
11557114099

push

github

Gabriel-Darbord
Major Java update
Model:
- rename relation TType's relation to ValueEntity from `values` to `valueInstances`, to avoid clash with TTypedEntity's relation to ValueEntity (because of FamixJavaParameterType which uses both)

Importer:
- handle class references
- handle enums
- do not remove @type and @id keys when iterating over raw values (that made debugging difficult)
- handle field descriptors with anonymous classes (using `$` as separator instead of a dot)
- search for attributes on parametric classes by asking the generic superclass
- infer using concrete parameter types
- read declared type array dimensions
- implicit switch from int to long when out of bounds

Exporter:
- handle class references
- throw error when reaching broken state instead of persevering and generating uncompilable code
- correctly export qualified names of any class using dispatch (there were problems with inner classes)
- when finding accessed attributes in a method, handle case where variable is the receiver
- add `withSubHierarchy` to also find interface implementors
- work around VerveineJ problems by adding nil checks where they should normally never occur
- better exception handling when using reflection
- more polymorphism on UnknownType
- add explicit cast to disambiguate between int and long when calling helpers
- WIP handling of exceptions thrown by constructors and accessors

Types:
- handle `java.util.Calendar`

13 of 207 new or added lines in 11 files covered. (6.28%)

3 existing lines in 2 files now uncovered.

760 of 3130 relevant lines covered (24.28%)

0.24 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/Famix-Value-Types/FamixValueJavaCalendar.class.st
1
"
2
A representation of `java.util.Calendar` and its subclasses.
3
They are serialized with a single `long` value, presumably(?) for the `time` attribute, which is ""the currently set time for this calendar, expressed in milliseconds after January 1, 1970, 0:00:00 GMT"".
4
"
5
Class {
6
        #name : 'FamixValueJavaCalendar',
7
        #superclass : 'FamixValueSpecialClass',
8
        #category : 'Famix-Value-Types',
9
        #package : 'Famix-Value-Types'
10
}
11

12
{ #category : 'importing' }
NEW
13
FamixValueJavaCalendar >> importSpecial: rawValue on: importer [
×
NEW
14
        "No clue what the value is supposed to be, maybe the gregorianCutover? (long)"
×
NEW
15

×
NEW
16
        ^ importer model newOfPrimitiveType
×
NEW
17
                  value: rawValue;
×
NEW
18
                  type: (importer entityFinder findTypeNamed: 'long')
×
NEW
19
]
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc