-
-
Notifications
You must be signed in to change notification settings - Fork 486
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
feat(transformer/class-properties): transform private methods #8099
Merged
graphite-app
merged 1 commit into
main
from
12-25-feat_transformer_class-properties_transform_private_methods
Dec 31, 2024
Merged
feat(transformer/class-properties): transform private methods #8099
graphite-app
merged 1 commit into
main
from
12-25-feat_transformer_class-properties_transform_private_methods
Dec 31, 2024
+511
−46
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
github-actions
bot
added
A-transformer
Area - Transformer / Transpiler
C-enhancement
Category - New feature or request
labels
Dec 24, 2024
CodSpeed Performance ReportMerging #8099 will not alter performanceComparing Summary
|
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 25, 2024 02:09
983cb28
to
adb27ce
Compare
This was referenced Dec 25, 2024
Merged
Dunqing
force-pushed
the
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
branch
from
December 26, 2024 16:11
b2e99bb
to
8f76d5c
Compare
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 26, 2024 16:11
adb27ce
to
00a33aa
Compare
Dunqing
force-pushed
the
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
branch
from
December 28, 2024 09:05
8f76d5c
to
21beebf
Compare
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 28, 2024 09:05
00a33aa
to
ec82309
Compare
Dunqing
force-pushed
the
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
branch
from
December 31, 2024 09:32
21beebf
to
85e4104
Compare
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 31, 2024 09:32
ec82309
to
2f5d7c7
Compare
Dunqing
force-pushed
the
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
branch
from
December 31, 2024 10:33
85e4104
to
a4c0d8e
Compare
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 31, 2024 10:33
2f5d7c7
to
fd55eae
Compare
Merge activity
|
This PR support transforms private methods in a class, moving all of them to after the `class`
Dunqing
force-pushed
the
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
branch
from
December 31, 2024 12:31
a4c0d8e
to
6af5870
Compare
Dunqing
force-pushed
the
12-25-feat_transformer_class-properties_transform_private_methods
branch
from
December 31, 2024 12:31
fd55eae
to
13349ef
Compare
Base automatically changed from
12-24-chore_transformer_enable_babel_s_private-methods_plugin_tests
to
main
December 31, 2024 12:43
graphite-app
bot
deleted the
12-25-feat_transformer_class-properties_transform_private_methods
branch
December 31, 2024 12:58
Boshen
added a commit
that referenced
this pull request
Jan 11, 2025
## [0.45.0] - 2025-01-11 - 7f69561 ast: [**BREAKING**] `oxc_ast` do not export `BigUint` (#8428) (overlookmotel) - d8b27af ast: [**BREAKING**] No unneccesary trailing underscores on `AstBuilder` method names (#8283) (overlookmotel) - 5106088 ast: [**BREAKING**] Remove `FromIn<Expression> for Statement` (#8280) (overlookmotel) ### Features - 6c7acac allocator: Implement `IntoIterator` for `&mut Vec` (#8389) (overlookmotel) - 3212bcd ast_tools: Ignore `raw` field of `NumericLiteral` and `StringLiteral` in `ContentEq` (#8417) (Boshen) - ad146bb codegen: Print real newline when `\n` is inside template literals (#8178) (Boshen) - 41ddf60 minfier: Add `CompressOptions::target` (#8179) (Boshen) - d56020b minifier: Drop `0` from `new Int8Array(0)` and other TypedArrays (#8431) (sapphi-red) - f935d94 minifier: Remove `new` from NativeErrors / `AggregateError` (#8430) (sapphi-red) - dab7a51 minifier: Minimize not `!(x === undefined)` -> `x !== undefined` (#8429) (Boshen) - 0e7bab8 minifier: Remove `if(false){}` in a single pass (#8421) (Boshen) - 5b5b844 minifier: Fold `ambiguous if else` (#8415) (Boshen) - 438a6e7 minifier: Minimize conditions in boolean context (#8381) (Boshen) - 793cb43 minifier: `a != null ? a : b` -> `a ?? b` (#8352) (camc314) - 814da55 minifier: Compress `x = x || 1` to `x ||= 1` (#8368) (sapphi-red) - a596821 minifier: Compress `a.b = a.b + c` to `a.b += c` (#8367) (sapphi-red) - 579eb60 minifier: Compress `a.b || (a.b = c)` to `a.b ||= c` (#8366) (sapphi-red) - f367a16 minifier: Port esbuild conditional expr minification (#8351) (camc314) - 8d52cd0 minifier: Merge assign expression in conditional expression (#8345) (sapphi-red) - a69d15f minifier: Compress `new Array(2)` -> `[,,]` (#8344) (sapphi-red) - 819c475 minifier: Compress `new Array(7n)` -> `[7n]` (#8343) (sapphi-red) - e085d66 minifier: Remove empty IIFE (#8340) (Boshen) - 2c2e483 minifier: Fold object spread `({ ...null })` -> `({})` (#8339) (Boshen) - 6220e05 minifier: Remove empty if statment `if (test) {}` -> `test` (#8336) (Boshen) - a76dfae minifier: Remove label statement with empty body (#8333) (Boshen) - e88a6bd minifier: Minimize `!0 + null !== 1` -> `!0 + null != 1` (#8332) (Boshen) - ec88c68 minifier: Compress `a || (a = b)` to `a ||= b` (#8315) (sapphi-red) - e6fe84d minifier: Compress `a = a + b` to `a += b` (#8314) (sapphi-red) - 9ea4e31 minifier: Remove `new` from `new Error`/`new Function`/`new RegExp` (#8313) (sapphi-red) - 051fbb6 minifier: Minimize `x["0"]` -> x[0] (#8316) (Boshen) - a542013 minifier: Minimize `do{}while(true)` -> `do;while(true)` (#8311) (Boshen) - e3ff81e minifier: Minimize `(x = 1) === 1` -> `(x = 1) == 1` (#8310) (Boshen) - 4b68cc0 minifier: Minimize empty `try` statement (#8309) (Boshen) - 922c514 minifier: Fold `.toString()` (#8308) (Boshen) - 66a2443 minifier: Minify sequence expressions (#8305) (camc314) - af65c36 minifier: Minimize double negated binary expressions (#8304) (camc314) - 76c778b minifier: Remove logical nots when arg is a delete expression (#8303) (camc314) - 5ed439b minifier: Minify typeof in binary expressions (#8302) (camc314) - 6afc590 minifier: Compress typeof addition string (#8301) (camc314) - ecc789f minifier: Fold `if(x >> y == 0){}` -> `if(!(x >> y)){}` (#8277) (Boshen) - 0e3b79a minifier: Fold `String()` -> `''`, `Number()` -> `false` (#8274) (Boshen) - c9cf593 minifier: Compress property key `{[1]: _}` -> {1: _} (#8272) (Boshen) - b92b2ab minifier: Fold `BigInt(1n)` -> `1n` (#8270) (Boshen) - a4df387 minifier: Compress loose equals undefined (#8268) (camc314) - f000596 minifier: Minify call expressionsto `Number` (#8267) (camc314) - 092aeaf minifier: Flatten spread args in call expressions (#8266) (camc314) - 04ec38d minifier: Remove unused arrow function expressions (#8262) (camc314) - e446c15 minifier: Improve minimizing unary not expressions (#8261) (camc314) - 7f19211 minifier: Minimize unary expression statements (#8256) (camc314) - cec63e2 minifier: `{}` evals to `f64::NaN` (Boshen) - 4d8a08d minifier: Improve constant evaluation (#8252) (Boshen) - e84f267 minifier: Compress more property keys (#8253) (Boshen) - d1224f9 minifier: Improve minimizing conditional expressions (#8251) (camc314) - 65f46f5 minifier: Constant fold `String.fromCharCode` (#8248) (Boshen) - bd8d677 minifier: Minimize `~undefined`, `~null`, `~true`, `~false` (#8247) (Boshen) - f73dc9e minifier: Constant fold `'x'.toString()` and `true.toString()` (#8246) (Boshen) - fd5af73 minifier: Minimize `Number` constructor (#8245) (Boshen) - 2f52f33 minifier: Minsize `!!!foo ? bar : baz` -> `foo ? baz : bar` (#8244) (Boshen) - ccdc039 minifier: Always put literals on the rhs of equal op `1==x` => `x==1` (#8240) (Boshen) - 39353b2 minifier: Improve minimizing conditionals (#8238) (Cameron) - c90fc16 minifier: Restore conditional minification and fix edge case (#8235) (camc314) - 6c8ee9f minifier: Remove last redundant `return` statement (#8234) (Boshen) - 51f4792 minifier: Minimize `foo ? foo : bar` and `foo ? bar : foo` (#8229) (Boshen) - 6e2ec17 minifier: Statement fusion switch cases; improved minimize exit poitns (#8228) (Boshen) - 574a242 minifier: Minimize all variants of `typeof x == 'undefined'` (#8227) (Boshen) - 2041477 minifier: Fold `if(x)return;y` -> `if(!x)y` (#8226) (Boshen) - 9c1afa4 minifier: Optional catch binding when catch param is unused (#8221) (Boshen) - 4a29845 minifier: Add `ConvertToDottedProperties` (#8212) (Boshen) - 2786dea minifier: Add `RemoveUnusedCode` (#8210) (Boshen) - cd274ee minifier: Minimize logical exprs (#8209) (Cameron) - 4ae15df minifier: Imprve more conditional expr minification with boolean lit (#8208) (camc314) - 3202b4f minifier: Imprve conditional expr minification with boolean lit (#8207) (camc314) - 3b45011 minifier: Handle conditional expr with boolean lit (#8206) (camc314) - 4c2059a minifier: Reverse negated conditional exprs (#8205) (camc314) - 4804933 minifier: Add `MinimizeExitPoints` and ExploitAssigns` boilerplate (#8203) (Boshen) - bf266e1 minifier: Try collapse conditional to logical or expr (#8197) (Cameron) - 06e1780 minifier: Improve `StatementFusion` (#8194) (Boshen) - 42e211a minifier: Only constant fold numbers when result is smaller (#8092) (Boshen) - d0de560 minifier: Change `NaN` to `f64::NAN` (#8191) (Boshen) - cef8eb8 minifier: Change `foo?.['bar']` to `foo?.bar` (#8176) (翠 / green) - 8149e34 minifier: Optional catch binding when es target >= es2019 (#8180) (Boshen) - fc43ec5 minifier: Fold `string.length` / `array.length` (#8172) (sapphi-red) - 29dc0dc minifier: Change `foo['bar']` -> foo.bar (#8169) (Boshen) - 3c5718d minifier: Fold `typeof foo == undefined` into `foo == undefined` when possible (#8160) (翠 / green) - f3a36e1 minifier: Fold `typeof foo != "undefined"` into `typeof foo < "u"` (#8159) (翠 / green) - 37c9959 minifier: Normalize `Infinity` into `f64::Infinity` (#8148) (Boshen) - 8fb71f5 minifier: Minify string `PropertyKey` (#8147) (Boshen) - 6615e1e minifier: Constant fold `instanceof` (#8142) (翠 / green) - 2b2a373 minifier: Minimize `a + 'b' + 'c'` -> `a + 'bc'` (#8137) (Boshen) - 213364a minifier: Minimize `if (x) if (y) z` -> `if (x && y) z` (#8136) (Boshen) - 6b51e6d minifier: Minimize `if(foo) bar else baz` -> `foo ? bar : baz` (#8133) (Boshen) - f615bfa minifier: Minimize `if (x) return; return 1` -> `return x ? void 0 : 1` (#8130) (Boshen) - f0b1ee5 minifier: Minimize `if(!x) foo()` -> `x || foo()` (#8122) (Boshen) - f8200a8 minifier: Minimize `if(foo) bar` -> `foo && bar` (#8121) (Boshen) - 72d9967 minifier: Add `Normalize` ast pass (#8120) (Boshen) - fef0b25 minifier: Collapse `var` into for loop initializer (#8119) (Boshen) - 2331ea8 minifier: `typeof foo === 'number'` => `typeof foo == 'number'` (#8112) (Boshen) - ad9a0a9 mininifier: Minimize variants of `a instanceof b == true` (#8241) (Boshen) - 2da4365 parser: Missing initializer in destructuring declaration inside for loop head (#8222) (Boshen) - 55744fd semantic: Allow getting mutable reference to symbols table (#8189) (Max Stoumen) - 0592a8b transformer/class-properties: Transform private in expression (#8202) (Dunqing) - ad77ad5 transformer/class-properties: Transform static/instance accessor methods (#8132) (Dunqing) - e405f79 transformer/class-properties: Transform static private method invoking (#8117) (Dunqing) - 3303e99 transformer/class-properties: Insert statements after statement of class expression (#8116) (Dunqing) - 0cc71cf transformer/class-properties: Transform super expressions and identifiers that refers to class binding in private method (#8106) (Dunqing) - 58ed832 transformer/class-properties: Transform private field expression which invokes private method (#8102) (Dunqing) - f14567a transformer/class-properties: Transform callee which invokes private method (#8100) (Dunqing) - 13349ef transformer/class-properties: Transform private methods (#8099) (Dunqing) ### Bug Fixes - eb25bc0 allocator: Fix lifetimes on `IntoIterator` for `Vec` (#8388) (overlookmotel) - 97a7992 ast: Fix `ContentEq` and `ContentHash` impls for literal types (#8426) (overlookmotel) - a1752a0 codegen: Fix incorrect minified `return 1n` output (#8374) (Boshen) - 5a648bc codegen: Fix white space issue with do statements (#8348) (Boshen) - b6d16f4 codegen: Print parenthesis on negative bigint lit when neccessary (#8258) (camc314) - 8ed9766 codegen: Source map builder panicked because it attempted to subtract with overflow in `search_original_line_and_column` (#8185) (Dunqing) - ad61e70 codegen: Print if else without block with proper indentation (#8135) (Boshen) - 74572de ecmascript: Incorrect `to_int_32` value for Infinity (#8144) (翠 / green) - e1f8ea4 lexer: `Source` is not `Clone` (#8294) (overlookmotel) - 5c63414 mangler: Keep exported symbols for `top_level: true` (#7927) (翠 / green) - 3c93549 minifier: Dce if statement should keep side effects and vars (#8433) (Boshen) - 52f88c0 minifier: Rotate associative operators to make it more idempotent (#8424) (camc314) - a80460c minifier: Correctly set `self.changed` when minimizing if stmts (#8420) (camc314) - d4ca8d4 minifier: `!!x` is not idempotent in `RemoveDeadCode` (#8419) (Boshen) - 357b61d minifier: Do not minify `Object.defineProperty` in sequence expressions (#8416) (Boshen) - 0efc845 minifier: `+0n` produces `TypeError` (#8410) (Boshen) - 7ce6a7c minifier: `a in b` has error throwing side effect (#8406) (Boshen) - 2f3a9dc minifier: Cannot transform property key `#constructor` (#8405) (Boshen) - c0a3dda minifier: `instanceof` has error throwing side effect (#8378) (Boshen) - 5516f7f minifier: Do not fold object comparisons (#8375) (Boshen) - cb098c7 minifier: Computed property key `prototype` cannot be changed (#8373) (Boshen) - 82ee77e minifier: Do not remove shadowned `undefined` in return statement (#8371) (Boshen) - f87da16 minifier: Do not fold literals in `-0 != +0` (#8278) (Boshen) - 62a2644 minifier: Handle arrow fn expressions correctly in `is_in_boolean_context` (#8260) (camc314) - d2f8eaa minifier: Fix panic in `peephole_minimize_conditions` (#8242) (Boshen) - a698def minifier: Fix incorrect return value for `(x ? true : y)` (#8233) (Boshen) - 05be1fc minifier: Remove incorrect fold `Expression::AssignmentExpression` (#8211) (Boshen) - 56b7f13 minifier: Do not constant fold `0 instanceof F` (#8199) (Boshen) - 75d5f17 minifier: Minify string `PropertyKey` (#8177) (sapphi-red) - f88acb3 parser: Allow line breaks between `const` and `enum` (#8193) (branchseer) - 79a8fc6 semantic: Report error for super property appearing in function body (#8376) (Dunqing) - 79af100 semantic: Reference flags not correctly resolved when after an export stmt (#8134) (camc314) - 3eaff2a transformer: Ensure last expression statement in arrow function expression is wrapped in return (#8192) (Dunqing) - 3feac27 transformer/arrow-functions: Outer `super()` in nested class (#8382) (Dunqing) - 335065d transformer/arrow-functions: Do not transform super that inside nested non-async method (#8335) (Dunqing) - e4d66e4 transformer/arrow-functions: Store `super_methods` on a `Stack` to fix nested async methods (#8331) (Dunqing) - 775a289 transformer/arrow-functions: `_this = this` should be inserted after super call expression (#8024) (Dunqing) - ac72adb transformer/private-methods: Fix panic if instance private accessor in class (#8362) (overlookmotel) - f1f129b transformer/private-methods: Create brand binding `var` in hoist scope (#8361) (overlookmotel) - ab61425 transformer/private-methods: No temp var for class when unused private methods (#8360) (overlookmotel) - 9a03bd2 transformer/typescript: Remove type-only `import =` when `only_remove_type_imports` is true (#8275) (Dunqing) - 0df1866 transformer/typescript: Create `Reference` for `require` (#8355) (overlookmotel) - 78d7c97 transformer/typescript: Create `Reference` for `Infinity` (#8354) (overlookmotel) - 2e7207f transformer/typescript: Should strip import specifiers type with `only_remove_type_imports` (#8141) (underfin) ### Performance - 07edf74 transformer/arrow-function: Stop traversal at function as super() can't appear in a nested function (#8383) (Dunqing) - 62e3f7e transformer/arrow-functions: Reduce size of inlined visitor (#8322) (overlookmotel) - aebe0ea transformer/arrow-functions: Use `NonEmptyStack` instead of `Stack` (#8318) (overlookmotel) ### Documentation - c8e4843 ast: Fix doc comment (#8286) (overlookmotel) - e0a09ab data_structures: Improve docs for stack types (#8356) (overlookmotel) - aaa009d minifier: Clarify assumptions for compressor (#8404) (翠 / green) - 05cba5b transformer/private-methods: Amend comments (#8398) (overlookmotel) ### Refactor - b29655f ast: Rearrange impls for literal types in same order as they are defined (#8425) (overlookmotel) - 0db2a22 ast: `AstBuilder` enum builder methods use `alloc_*` methods (#8281) (overlookmotel) - aea9551 ast: Simplify `get_identifier_reference` of `TSType` and `TSTypeName` (#8273) (Dunqing) - 9c1844a data_structures: Remove `NonNull` shim (#8423) (overlookmotel) - 1835687 ecmascript: Remove unnecessary `use` statement (#8284) (overlookmotel) - 64bfdfe lexer: Tighten safety of lexer by always including lifetime on `SourcePosition` (#8293) (overlookmotel) - 0344e98 lexer: Make `handle_byte` a method of `Lexer` (#8291) (overlookmotel) - fabf116 lexer: Replace `#[allow]` with `#[expect]` (#8289) (overlookmotel) - 0462edb lexer: Rename function param (#8288) (overlookmotel) - fb2acd8 minifier: Change minimize conditionals into a loop (#8413) (Boshen) - baaec60 minifier: Remove the buggy `??` transform (#8411) (Boshen) - 1c4658d minifier: Change ast passes order, `!in_fixed_loop` happen last (#8380) (Boshen) - 09f0f48 minifier: Remove the buggy `minimize_exit_points` implementation (#8349) (Boshen) - 9a5c66a minifier: Clean up (#8346) (Boshen) - 98f2b1c minifier: Clean up `peephole_substitute_alternate_syntax` (#8327) (Boshen) - fc662b7 minifier: Handle big int values later (#8324) (Boshen) - d16e598 minifier: Clean up `peephole_replace_known_methods` (#8306) (Boshen) - b8d26ea minifier: Move optional catch param to peephole_substitute_alternate_syntax (#8282) (Boshen) - 0845162 minifier: Clean up `ReplaceKnownMethods` (Boshen) - 7c7f5d7 minifier: Clean up `peephole_fold_constants` (Boshen) - bf0fbce minifier: Improve constant fold numbers (#8239) (Boshen) - 62f8fba minifier: Move all conditional minification logic to minimze_conditions (#8231) (camc314) - cfb51f2 minifier: Fuse ast passes (#8184) (Boshen) - bf9cafe minifier: Clean up `peephole_substitute_alternate_syntax` a little bit (Boshen) - 75264ed minifier: Clean up `try_optimize_block` (#8139) (Boshen) - c22062b minifier: Cleanup peephole_minimize_conditions (#8114) (Boshen) - e594c39 minifier: Clean up `peephole_substitute_alternate_syntax.rs` (#8111) (Boshen) - 0903501 semantic: Check super usage based on scope (#8377) (Dunqing) - 109b8fc transformer: Elide lifetimes where possible (#8285) (overlookmotel) - fb389f7 transformer/arrow-function: Create a new ident instead of clone (#8338) (Dunqing) - dddbd29 transformer/arrow-functions: Reorder assertions (#8386) (overlookmotel) - ce6c445 transformer/arrow-functions: Add TODO comments (#8328) (overlookmotel) - 73d0025 transformer/arrow-functions: Reduce repeated code (#8323) (overlookmotel) - 3dd08e9 transformer/arrow-functions: Do not inline non-trivial visitor method (#8321) (overlookmotel) - ea9cefb transformer/arrow-functions: Reorder visitor methods (#8320) (overlookmotel) - 37199a4 transformer/arrow-functions: Rename lifetime (#8319) (overlookmotel) - 57e9dcf transformer/arrow-functions: Shorten `AstBuilder` call (#8317) (overlookmotel) - a5e3528 transformer/async-to-generator: Pass `TraverseCtx` to function not `AstBuilder` (#8279) (overlookmotel) - e7c89ba transformer/class-properties: TODO comments (#8392) (overlookmotel) - 6790d1d transformer/class-properties: Simplify determining if class is declaration (#8357) (overlookmotel) - c786a13 transformer/class-properties: Share `replace_class_name_with_temp_var` in class_properties (#8105) (Dunqing) - f54f48e transformer/class-properties: Remove all `*_if_super` methods in `static_block_and_prop_init` (#8104) (Dunqing) - d82fb52 transformer/class-properties: Move `supers` to `super_converter` (#8103) (Dunqing) - 3dad85e transformer/private-methods: Remove unnecessary clone (#8400) (overlookmotel) - aa5e65f transformer/private-methods: Simplify finding parent statement of class expression (#8364) (overlookmotel) - c786fd1 transformer/private-methods: TODO comments (#8363) (overlookmotel) ### Styling - 4d2888d lexer: Reorder imports (#8290) (overlookmotel) - e81f34f span: Reformat code (#8296) (overlookmotel) - 45e2402 transformer/private-methods: Move comments (#8399) (overlookmotel) - 0a1ffc0 transformer/private-methods: Rename var (#8397) (overlookmotel) ### Testing - 16dcdaf lexer: Assert size of `Token` in 32-bit WASM (#8292) (overlookmotel) - 3149fe0 minifier: Add anonymous function test case for logical expression to logical assignment compression (#8347) (sapphi-red) - 91b42de minifier: Enable some passing tests (#8250) (camc314) - 1fa5341 minifier: Port tests from ConvertToDottedPropertiesTest (#8175) (sapphi-red) Co-authored-by: Boshen <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
0-merge
Merge with Graphite Merge Queue
A-transformer
Area - Transformer / Transpiler
C-enhancement
Category - New feature or request
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR support transforms private methods in a class, moving all of them to after the
class