JSAbrahams / mamba

🐍 The Mamba programming language, because we care about safety
MIT License
85 stars 3 forks source link

Class inherits all parent fields and functions #447

Closed JSAbrahams closed 1 year ago

JSAbrahams commented 1 year ago

Relevant issues

Summary

Class now inherits all functions and fields from parent. This means that a concrete class is complete, and we shouldn't have to resort to any lookups of parents when looking for fields or function because it is self-contained.

Bug Fixes

This also fixes a bug where generics of parent fields and functions were not substituted. Now this should be no longer an issue. In general, it is good to use methods of internal resources as much as possible to also uncover potential bugs we might not have covered in tests (such as this one).

codecov[bot] commented 1 year ago

Codecov Report

Merging #447 (04a7888) into develop (75a4490) will decrease coverage by 0.02%. The diff coverage is 92.92%.

@@             Coverage Diff             @@
##           develop     #447      +/-   ##
===========================================
- Coverage    88.20%   88.19%   -0.02%     
===========================================
  Files          105      105              
  Lines        11497    11476      -21     
===========================================
- Hits         10141    10121      -20     
+ Misses        1356     1355       -1     
Impacted Files Coverage Ξ”
src/check/constrain/generate/collection.rs 97.53% <ΓΈ> (ΓΈ)
src/check/context/clss/python.rs 87.57% <ΓΈ> (ΓΈ)
src/check/context/function/mod.rs 52.00% <ΓΈ> (ΓΈ)
src/parse/ast/mod.rs 97.11% <0.00%> (-2.89%) :arrow_down:
src/parse/lex/token.rs 74.40% <ΓΈ> (-0.25%) :arrow_down:
src/parse/lex/tokenize.rs 97.57% <ΓΈ> (-0.01%) :arrow_down:
src/check/constrain/generate/definition.rs 90.06% <75.00%> (-0.33%) :arrow_down:
src/check/constrain/unify/function.rs 77.55% <75.00%> (ΓΈ)
src/check/constrain/generate/operation.rs 95.38% <92.59%> (+3.83%) :arrow_up:
src/check/context/clss/mod.rs 92.26% <95.23%> (+4.84%) :arrow_up:
... and 19 more