Skip to content

Instantly share code, notes, and snippets.

@zerkalica
Last active December 17, 2023 09:01
Show Gist options
  • Save zerkalica/e7d6a43436d188fe109304c3c10457a6 to your computer and use it in GitHub Desktop.
Save zerkalica/e7d6a43436d188fe109304c3c10457a6 to your computer and use it in GitHub Desktop.
rg
declare namespace $ {
type $mol_view_tree2_to_js_test_ex_right_hierarchy_bar__id__CP48JLAJ = $mol_type_enforce<
ReturnType< $foo['indexed_id'] >
,
ReturnType< $bar['id'] >
>
type $foo_indexed_title__W0JNK55Y = $mol_type_enforce<
Parameters< $foo['indexed_title'] >[0]
,
Parameters< $foo['Indexed'] >[0]
>
type $foo_indexed_title__D7GPDL50 = $mol_type_enforce<
Parameters< $foo['indexed_title'] >[1]
,
Parameters< $bar['title'] >[0]
>
type $foo_prj_domain__ESCI45MT = $mol_type_enforce<
Parameters< $foo['prj_domain'] >[0]
,
Parameters< $bar['domain'] >[0]
>
type $foo_prj_user__HRY6HNTG = $mol_type_enforce<
Parameters< $foo['prj_user'] >[0]
,
Parameters< $foo['prj_domain'] >[0]
>
type $foo_prj_user_id__WIJTM4ZC = $mol_type_enforce<
Parameters< $foo['prj_user_id'] >[0]
,
Parameters< $foo['prj_user'] >[0]
>
export class $foo extends $mol_object {
Indexed( id: any): $bar
prj( ): $bar
indexed_title( id: any, next?: ReturnType< ReturnType< $foo['Indexed'] >['title'] > ): ReturnType< ReturnType< $foo['Indexed'] >['title'] >
indexed_id( id: any): number
prj_domain( id: any): ReturnType< ReturnType< $foo['prj'] >['domain'] >
prj_user( id: any): ReturnType< ReturnType< $foo['prj_domain'] >['user'] >
prj_user_id( id: any): ReturnType< ReturnType< $foo['prj_user'] >['id'] >
}
}
//# sourceMappingURL=right_hierarchy.view.tree.d.ts.map
($.$foo) = class $foo extends ($.$mol_object) {
Indexed(id){
const obj = new this.$.$bar();
(obj.id) = () => ((this.indexed_id(id)));
return obj;
}
prj(){
const obj = new this.$.$bar();
return obj;
}
indexed_title(id, next){
return (this.Indexed(id).title(next));
}
indexed_id(id){
return 0;
}
prj_domain(id){
return (this.prj().domain(id));
}
prj_user(id){
return (this.prj_domain(id).user());
}
prj_user_id(id){
return (this.prj_user(id).id());
}
};
($mol_mem_key(($.$foo.prototype), "Indexed"));
($mol_mem(($.$foo.prototype), "prj"));
($mol_mem_key(($.$foo.prototype), "indexed_title"));
//# sourceMappingURL=right_hierarchy.view.tree.js.map
Indexed* $bar
title? => indexed_title*?
id <= indexed_id*
prj $bar domain* => prj_domain* user => prj_user* id => prj_user_id*
indexed_title*? =
Indexed* $bar
title? => indexed_title*?
id <= indexed_id* 0
title?
indexed_id* 0
prj_domain* =
- Включать исходную строку нужно, что б сгенерить Parameters< $bar['domain'] >[0] а не Parameters< $foo['domain'] >[0]
prj $bar domain* => prj_domain* user => prj_user* id => prj_user_id*
domain*
prj_user* =
prj_domain*
user
prj_user_id* =
prj_user*
id
$foo $mol_object
Indexed* $bar
title? => indexed_title*?
id <= indexed_id* 0
prj $bar
domain* => prj_domain*
user => prj_user*
id => prj_user_id*
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment