@@ -102,6 +102,7 @@ func run() error {
102102 buf .WriteString ("// Code generated by go generate; DO NOT EDIT.\n " )
103103 buf .WriteString ("// This file contains pre-parsed default configuration to avoid runtime TOML parsing.\n \n " )
104104 buf .WriteString ("package config\n \n " )
105+ buf .WriteString ("import ruleslib \" github.com/xihale/snirect-shared/rules\" \n \n " )
105106
106107 // Generate Config
107108 buf .WriteString ("// PreparsedDefaultConfig contains the compile-time parsed default configuration.\n " )
@@ -111,13 +112,40 @@ func run() error {
111112 }
112113 buf .WriteString ("\n \n " )
113114
114- // Generate Rules
115+ // Generate Rules - embed in ruleslib.Rules
115116 buf .WriteString ("// PreparsedDefaultRules contains the compile-time parsed default rules.\n " )
116- buf .WriteString ("var PreparsedDefaultRules = " )
117- if err := writeValue (& buf , reflect .ValueOf (rules ), 0 ); err != nil {
118- return fmt .Errorf ("failed to generate rules: %w" , err )
117+ buf .WriteString ("var PreparsedDefaultRules = Rules{\n " )
118+ buf .WriteString ("\t Rules: &ruleslib.Rules{\n " )
119+
120+ // Write AlterHostname
121+ if rules .AlterHostname != nil && len (rules .AlterHostname ) > 0 {
122+ buf .WriteString ("\t \t AlterHostname: " )
123+ if err := writeValue (& buf , reflect .ValueOf (rules .AlterHostname ), 2 ); err != nil {
124+ return fmt .Errorf ("failed to generate AlterHostname: %w" , err )
125+ }
126+ buf .WriteString (",\n " )
127+ }
128+
129+ // Write CertVerify
130+ if rules .CertVerify != nil && len (rules .CertVerify ) > 0 {
131+ buf .WriteString ("\t \t CertVerify: " )
132+ if err := writeValue (& buf , reflect .ValueOf (rules .CertVerify ), 2 ); err != nil {
133+ return fmt .Errorf ("failed to generate CertVerify: %w" , err )
134+ }
135+ buf .WriteString (",\n " )
119136 }
120- buf .WriteString ("\n " )
137+
138+ // Write Hosts
139+ if rules .Hosts != nil && len (rules .Hosts ) > 0 {
140+ buf .WriteString ("\t \t Hosts: " )
141+ if err := writeValue (& buf , reflect .ValueOf (rules .Hosts ), 2 ); err != nil {
142+ return fmt .Errorf ("failed to generate Hosts: %w" , err )
143+ }
144+ buf .WriteString (",\n " )
145+ }
146+
147+ buf .WriteString ("\t },\n " )
148+ buf .WriteString ("}\n " )
121149
122150 // Format the generated code
123151 formatted , err := format .Source (buf .Bytes ())
0 commit comments