@@ -58,37 +58,101 @@ static inline ClarabelDefaultSolver *clarabel_DefaultSolver_new(const ClarabelCs
5858}
5959
6060#ifdef FEATURE_SERDE
61- // DefaultSolver::read_from_file
62- ClarabelDefaultSolver_f64 * clarabel_DefaultSolver_f64_read_from_file (const char * filename );
63- ClarabelDefaultSolver_f32 * clarabel_DefaultSolver_f32_read_from_file (const char * filename );
61+ // DefaultSolver::load_from_file
62+ ClarabelDefaultSolver_f64 * clarabel_DefaultSolver_f64_load_from_file (const char * filename );
63+ ClarabelDefaultSolver_f32 * clarabel_DefaultSolver_f32_load_from_file (const char * filename );
6464 #ifdef CLARABEL_USE_FLOAT
65- static inline ClarabelDefaultSolver * clarabel_DefaultSolver_read_from_file (const char * filename )
65+ static inline ClarabelDefaultSolver * clarabel_DefaultSolver_load_from_file (const char * filename )
6666 {
67- return clarabel_DefaultSolver_f32_read_from_file (filename );
67+ return clarabel_DefaultSolver_f32_load_from_file (filename );
6868 }
6969 #else
70- static inline ClarabelDefaultSolver * clarabel_DefaultSolver_read_from_file (const char * filename )
70+ static inline ClarabelDefaultSolver * clarabel_DefaultSolver_load_from_file (const char * filename )
7171 {
72- return clarabel_DefaultSolver_f64_read_from_file (filename );
72+ return clarabel_DefaultSolver_f64_load_from_file (filename );
7373 }
7474 #endif // CLARABEL_USE_FLOAT
7575
76- // DefaultSolver::write_to_file
77- void clarabel_DefaultSolver_f64_write_to_file (ClarabelDefaultSolver_f64 * solver , const char * filename );
78- void clarabel_DefaultSolver_f32_write_to_file (ClarabelDefaultSolver_f32 * solver , const char * filename );
76+ // DefaultSolver::save_to_file
77+ void clarabel_DefaultSolver_f64_save_to_file (ClarabelDefaultSolver_f64 * solver , const char * filename );
78+ void clarabel_DefaultSolver_f32_save_to_file (ClarabelDefaultSolver_f32 * solver , const char * filename );
7979 #ifdef CLARABEL_USE_FLOAT
80- static inline void clarabel_DefaultSolver_write_to_file (ClarabelDefaultSolver * solver , const char * filename )
80+ static inline void clarabel_DefaultSolver_save_to_file (ClarabelDefaultSolver * solver , const char * filename )
8181 {
82- clarabel_DefaultSolver_f32_write_to_file (solver ,filename );
82+ clarabel_DefaultSolver_f32_save_to_file (solver ,filename );
8383 }
8484 #else
85- static inline void clarabel_DefaultSolver_write_to_file (ClarabelDefaultSolver * solver , const char * filename )
85+ static inline void clarabel_DefaultSolver_save_to_file (ClarabelDefaultSolver * solver , const char * filename )
8686 {
87- clarabel_DefaultSolver_f64_write_to_file (solver ,filename );
87+ clarabel_DefaultSolver_f64_save_to_file (solver ,filename );
8888 }
8989 #endif // CLARABEL_USE_FLOAT
9090#endif // FEATURE_SERDE
9191
92+ // DefaultSolver::print_to_stdout
93+ void clarabel_DefaultSolver_f64_print_to_stdout (ClarabelDefaultSolver_f64 * solver );
94+ void clarabel_DefaultSolver_f32_print_to_stdout (ClarabelDefaultSolver_f32 * solver );
95+ #ifdef CLARABEL_USE_FLOAT
96+ static inline void clarabel_DefaultSolver_print_to_stdout (ClarabelDefaultSolver * solver )
97+ {
98+ clarabel_DefaultSolver_f32_print_to_stdout (solver );
99+ }
100+ #else
101+ static inline void clarabel_DefaultSolver_print_to_stdout (ClarabelDefaultSolver * solver )
102+ {
103+ clarabel_DefaultSolver_f64_print_to_stdout (solver );
104+ }
105+ #endif // CLARABEL_USE_FLOAT
106+
107+ // DefaultSolver::print_to_file
108+ void clarabel_DefaultSolver_f64_print_to_file (ClarabelDefaultSolver_f64 * solver , const char * filename );
109+ void clarabel_DefaultSolver_f32_print_to_file (ClarabelDefaultSolver_f32 * solver , const char * filename );
110+ #ifdef CLARABEL_USE_FLOAT
111+ static inline void clarabel_DefaultSolver_print_to_file (ClarabelDefaultSolver * solver , const char * filename )
112+ {
113+ clarabel_DefaultSolver_f32_print_to_file (solver , const char * filename );
114+ }
115+ #else
116+ static inline void clarabel_DefaultSolver_print_to_file (ClarabelDefaultSolver * solver , const char * filename )
117+ {
118+ clarabel_DefaultSolver_f64_print_to_file (solver , filename );
119+ }
120+ #endif // CLARABEL_USE_FLOAT
121+
122+ // DefaultSolver::print_to_buffer
123+ void clarabel_DefaultSolver_f64_print_to_buffer (ClarabelDefaultSolver_f64 * solver );
124+ void clarabel_DefaultSolver_f32_print_to_buffer (ClarabelDefaultSolver_f32 * solver );
125+ #ifdef CLARABEL_USE_FLOAT
126+ static inline void clarabel_DefaultSolver_print_to_buffer (ClarabelDefaultSolver * solver )
127+ {
128+ clarabel_DefaultSolver_f32_print_to_buffer (solver );
129+ }
130+ #else
131+ static inline void clarabel_DefaultSolver_print_to_buffer (ClarabelDefaultSolver * solver )
132+ {
133+ clarabel_DefaultSolver_f64_print_to_buffer (solver );
134+ }
135+ #endif // CLARABEL_USE_FLOAT
136+
137+ // DefaultSolver::print_to_buffer
138+ // NB: The buffer is owned by rust and should not be freed by the C side caller.
139+ // Call clarabel_free_print_buffer to free the buffer. Failure to do so will
140+ // result in a memory leak.
141+ const char * clarabel_DefaultSolver_f64_get_print_buffer (ClarabelDefaultSolver_f64 * solver );
142+ const char * clarabel_DefaultSolver_f32_get_print_buffer (ClarabelDefaultSolver_f32 * solver );
143+ void clarabel_free_print_buffer (const char * buffer );
144+
145+ #ifdef CLARABEL_USE_FLOAT
146+ static inline const char * clarabel_DefaultSolver_get_print_buffer (ClarabelDefaultSolver * solver )
147+ {
148+ return clarabel_DefaultSolver_f32_get_print_buffer (solver );
149+ }
150+ #else
151+ static inline const char * clarabel_DefaultSolver_get_print_buffer (ClarabelDefaultSolver * solver )
152+ {
153+ return clarabel_DefaultSolver_f64_get_print_buffer (solver );
154+ }
155+ #endif // CLARABEL_USE_FLOAT
92156
93157
94158// DefaultSolver::solve
0 commit comments