![]()  | 
								
									 
										tgrekov-push_swap
									 
									
										HIVE push_swap July 2024
									 
								 | 
							
Definition in file handle_sequence.c.
#include <stdarg.h>#include "sequence.h"#include "../utils/utils.h"#include "../../../../libft.h"Go to the source code of this file.
Functions | |
| void | init_subspec (t_subspec *subspec) | 
| Sets initial values for a s_subspec that are not always set elsewhere.   | |
| void | identify_sequence (va_list args, t_sequence *seq) | 
Initialize a s_sequence and determine which specifier it needs to handle, and runs the preprocessing function for that specifier. Sets s_sequence::specifier to 0 on failure.   | |
| void | parse_subspec (const char **format, t_subspec *subspec, va_list args) | 
| Parse flags, width, precision, and length.   | |
| static int | print (t_sequence seq, int *fd, int total) | 
| Print appropriate padding characters on either side, as well as the sign / prefix, and call the processing function for the given specifier.   | |
| int | handle_sequence (const char **format, va_list args, int *fd, int total) | 
| Prepares and executes a sequence.   | |
| int handle_sequence | ( | const char ** | format, | 
| va_list | args, | ||
| int * | fd, | ||
| int | total | ||
| ) | 
Prepares and executes a sequence.
Initializes and parses any subspecifiers, identifies the sequence and executes the preprocessor for it, adds up the final predicted lengths, prints padding, prefixes, and executes the processor for the sequence.
| [in,out] | format | |
| [in,out] | args | |
| [in,out] | fd | |
| [in] | total | 
| int | Number of characters printed, or -1 on error.  | 
Definition at line 77 of file handle_sequence.c.
References ft_strlen(), identify_sequence(), init_subspec(), s_subspec::min_width, s_sequence::pad_len, parse_subspec(), print(), s_sequence::sign, s_sequence::specifier, s_sequence::subspec, and s_sequence::total_len.
| void identify_sequence | ( | va_list | args, | 
| t_sequence * | seq | ||
| ) | 
Initialize a s_sequence and determine which specifier it needs to handle, and runs the preprocessing function for that specifier. Sets s_sequence::specifier to 0 on failure. 
| [in,out] | args | |
| [in,out] | seq | 
Definition at line 44 of file identify_sequence.c.
References init_sequence(), pre_char(), pre_int(), pre_percent(), pre_ptr(), pre_set_fd(), pre_store(), pre_string(), pre_uhex(), pre_uint(), pre_uoct(), and s_sequence::specifier.
| void init_subspec | ( | t_subspec * | subspec | ) | 
Sets initial values for a s_subspec that are not always set elsewhere.
| [in,out] | subspec | 
Definition at line 31 of file parse_subspec.c.
References s_subspec::force_decimal, s_subspec::forced_sign, s_subspec::left_justify, s_subspec::lenmod, s_subspec::min_width, s_subspec::pad_str, and s_subspec::precision.
| void parse_subspec | ( | const char ** | format, | 
| t_subspec * | subspec, | ||
| va_list | args | ||
| ) | 
Parse flags, width, precision, and length.
| [in,out] | format | |
| [in,out] | subspec | |
| [in,out] | args | 
Definition at line 99 of file parse_subspec.c.
References s_subspec::force_decimal, s_subspec::forced_sign, ft_isdigit(), ft_strchr(), s_subspec::left_justify, s_subspec::min_width, s_subspec::pad_str, parse_lenmod(), s_subspec::precision, and subspec_parse_width_or_precision().
      
  | 
  static | 
Print appropriate padding characters on either side, as well as the sign / prefix, and call the processing function for the given specifier.
| [in] | seq | |
| [in,out] | fd | |
| [in] | total | 
| int | Number of characters printed, or -1 on error.  | 
Definition at line 39 of file handle_sequence.c.
References ft_strlen(), s_subspec::left_justify, s_sequence::pad_len, s_subspec::pad_str, s_sequence::process, repeat_str_n(), s_sequence::sign, s_sequence::subspec, and wrap_err().