<commit_before>namespace $ {

	export function $mol_atom2_field<
		Host extends object ,
		Field extends keyof Host ,
		Value extends Host[ Field ]
	>(
		proto : Host ,
		name : Field ,
		descr? : TypedPropertyDescriptor< Value >
	) : any {

		const get = descr ? descr.get : $mol_const( proto[ name ] )
		const set = descr ? descr.set : ()=> {}
		
		const store = new WeakMap< Host , $mol_fiber< Value > >()

		Object.defineProperty( proto , name + "@" , {
			get : function() {
				return store.get( this )
			}
		} )

		const get_cache = ( host : Host )=> {
			
			let cache = store.get( host )
			<commit_msg>$mol_atom2_field: don't call parent getter on defining child prop.<commit_after>namespace $ {

	export function $mol_atom2_field<
		Host extends object ,
		Field extends keyof Host ,
		Value extends Host[ Field ]
	>(
		proto : Host ,
		name : Field ,
		descr? : TypedPropertyDescriptor< Value >
	) : any {
		
		if( !descr ) descr =  Object.getOwnPropertyDescriptor( proto , name )

		const get = descr ? ( descr.get || $mol_const( descr.value ) ) : ( ()=> {} )
		const set = descr && descr.set || ( ()=> {} )
		
		const store = new WeakMap< Host , $mol_fiber< Value > >()

		Object.defineProperty( proto , name + "@" , {
			get : function() {
				return store.get( this )
			}
		} )

		const get_cache = ( host : Host )=> {
			
			let cache = store.get( host )
			
{'fraction_non_alphanumeric': 0.13870733478576616, 'fraction_numerical': 0.002178649237472767, 'mean_word_length': 2.817174515235457, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 16, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '72288', 'n_tokens_mistral': 540, 'n_tokens_neox': 461, 'n_words': 127}