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

Function framework refactor #2292

Merged
merged 1 commit into from
Oct 29, 2023
Merged

Function framework refactor #2292

merged 1 commit into from
Oct 29, 2023

Conversation

acquamarin
Copy link
Collaborator

@acquamarin acquamarin commented Oct 27, 2023

This PR refactors the current testing framework:
TableFunction, AggregateFunction and scalarFunction are implemented using the same base class Function. All function definitions are stored together in the BuiltInFunction class.

Todos:

  1. Binder should have a unified design/interface to match functions.
  2. Change paramterTypes/resultType in the function definition from LogicalTypeID to LogicalType

@codecov
Copy link

codecov bot commented Oct 27, 2023

Codecov Report

Attention: 13 lines in your changes are missing coverage. Please review.

Comparison is base (38b2497) 89.69% compared to head (9121550) 89.66%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2292      +/-   ##
==========================================
- Coverage   89.69%   89.66%   -0.03%     
==========================================
  Files        1027     1023       -4     
  Lines       36078    35449     -629     
==========================================
- Hits        32360    31786     -574     
+ Misses       3718     3663      -55     
Files Coverage Δ
src/binder/bind/bind_reading_clause.cpp 95.65% <100.00%> (ø)
...der/bind_expression/bind_comparison_expression.cpp 100.00% <100.00%> (ø)
...inder/bind_expression/bind_function_expression.cpp 96.77% <100.00%> (ø)
src/binder/expression_binder.cpp 97.50% <100.00%> (ø)
src/catalog/catalog.cpp 100.00% <100.00%> (ø)
src/catalog/catalog_content.cpp 100.00% <100.00%> (ø)
src/common/expression_type.cpp 87.50% <ø> (+21.78%) ⬆️
src/expression_evaluator/node_rel_evaluator.cpp 100.00% <100.00%> (ø)
src/function/aggregate_function.cpp 90.38% <100.00%> (+2.38%) ⬆️
src/function/built_in_functions.cpp 100.00% <100.00%> (ø)
... and 53 more

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@acquamarin acquamarin force-pushed the function-framework branch 3 times, most recently from b72b09b to d9725f4 Compare October 28, 2023 03:10
src/catalog/catalog_content.cpp Show resolved Hide resolved
src/function/built_in_functions.cpp Show resolved Hide resolved
src/function/built_in_functions.cpp Show resolved Hide resolved
src/function/vector_list_functions.cpp Show resolved Hide resolved
src/include/parser/expression/parsed_function_expression.h Outdated Show resolved Hide resolved
@acquamarin acquamarin merged commit 627b5f5 into master Oct 29, 2023
12 checks passed
@acquamarin acquamarin deleted the function-framework branch October 29, 2023 03:21
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

Successfully merging this pull request may close these issues.

2 participants