From 8dbcb36b86b4cf5cd4ae6641d1ab25c219ca86f5 Mon Sep 17 00:00:00 2001 From: Marc Hernandez Date: Thu, 16 May 2024 22:18:15 -0700 Subject: [PATCH] Process updates --- imm/Imm.cs | 33 ++++++++++++++++++++++----------- ser/XmlFormatter2.cs | 4 ---- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/imm/Imm.cs b/imm/Imm.cs index fc776d1..b16f34d 100644 --- a/imm/Imm.cs +++ b/imm/Imm.cs @@ -219,9 +219,10 @@ public record class Recorded : Versioned, imm.Imm string dbgExp = default ) { - return Process( ( old ) => next, reason, dbgName, dbgPath, dbgLine, dbgExp ); + return ProcessWork( ( old ) => next, reason, dbgName, dbgPath, dbgLine, dbgExp ); } + virtual public T Process( Func fn, string reason = "", [CallerMemberName] string dbgName = "", @@ -230,6 +231,17 @@ public record class Recorded : Versioned, imm.Imm [CallerArgumentExpression("fn")] string dbgExp = default ) + { + return ProcessWork( fn, reason, dbgName, dbgPath, dbgLine, dbgExp ); + } + + virtual public T ProcessWork( Func fn, + string reason, + string dbgName, + string dbgPath, + int dbgLine, + string dbgExp + ) { var orig = ( T )this; @@ -306,7 +318,7 @@ public record class Timed : Recorded, imm.Imm string dbgExp = default ) { - return Process( ( old ) => next, reason, dbgName, dbgPath, dbgLine, dbgExp ); + return ProcessWork( ( old ) => next, reason, dbgName, dbgPath, dbgLine, dbgExp ); } public U ProcessFn( Func fn, @@ -319,7 +331,7 @@ public record class Timed : Recorded, imm.Imm ) where U : T { - return (U)ProcessFn( fn, reason, dbgName, dbgPath, dbgLine, dbgExp ); + return (U)ProcessWork( fn as Func, reason, dbgName, dbgPath, dbgLine, dbgExp ); } override public T Process( Func fn, @@ -330,15 +342,14 @@ public record class Timed : Recorded, imm.Imm [CallerArgumentExpression("fn")] string dbgExp = default ) - => ProcessFn( fn, reason, dbgName, dbgPath, dbgLine, dbgExp ); + => ProcessWork( fn, reason, dbgName, dbgPath, dbgLine, dbgExp ); - public T ProcessFn( Func fn, - string reason = "", - [CallerMemberName] string dbgName = "", - [CallerFilePath] string dbgPath = "", - [CallerLineNumber] int dbgLine = 0, - [CallerArgumentExpression("fn")] - string dbgExp = default + virtual public T ProcessWork( Func fn, + string reason, + string dbgName, + string dbgPath, + int dbgLine, + string dbgExp ) { var orig = ( T )this; diff --git a/ser/XmlFormatter2.cs b/ser/XmlFormatter2.cs index ef93fb1..44f0455 100644 --- a/ser/XmlFormatter2.cs +++ b/ser/XmlFormatter2.cs @@ -954,10 +954,6 @@ namespace lib } - if( typeof(res.Ref).IsAssignableFrom( type ) ) - { - log.info( $"Ref time!" ); - } // THIRD create a new object {