diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2024-03-04 08:11:19 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2024-03-04 08:11:19 (GMT) |
commit | fad3328dbabccc33e984f2f9a39411e959dc03e1 (patch) | |
tree | 810175d04bacc667bc19032e929ffbe84436d136 /src/analysis/scan/exprs/handler-int.h | |
parent | 7f25bd904e483ca90548c7001839a102090eb290 (diff) |
Share instances to avoid extra calls to g_object_[un]ref().
Diffstat (limited to 'src/analysis/scan/exprs/handler-int.h')
-rw-r--r-- | src/analysis/scan/exprs/handler-int.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/analysis/scan/exprs/handler-int.h b/src/analysis/scan/exprs/handler-int.h index a38dd03..e051b30 100644 --- a/src/analysis/scan/exprs/handler-int.h +++ b/src/analysis/scan/exprs/handler-int.h @@ -37,8 +37,13 @@ struct _GScanPatternHandler { GScanExpression parent; /* A laisser en premier */ - GSearchPattern **patterns; /* Motifs associés */ + union + { + const GSearchPattern **patterns; /* Motifs associés */ + GSearchPattern **ref_patterns; /* Motifs associés */ + }; size_t count; /* Nombre de ces motifs */ + bool shared; /* Définition de propriété */ ScanHandlerType type; /* Manipulation attendue */ @@ -53,7 +58,10 @@ struct _GScanPatternHandlerClass /* Met en place une manipulation de correspondances établies. */ -bool g_scan_pattern_handler_create(GScanPatternHandler *, GSearchPattern ** const, size_t, ScanHandlerType); +bool g_scan_pattern_handler_create_shared(GScanPatternHandler *, const GSearchPattern ** const, size_t, ScanHandlerType); + +/* Met en place une manipulation de correspondances établies. */ +bool g_scan_pattern_handler_create_and_ref(GScanPatternHandler *, GSearchPattern ** const, size_t, ScanHandlerType); |