|
Minishell 1.0
42 School Minishell Project - A simple shell implementation
|
Bu dosyanın kaynak koduna git.
Fonksiyonlar | |
| int | free_expansion_parts (t_expansion_parts *parts, int ret_val) |
| String birleştirme işlemi sırasında kullanılan geçici yapıyı temizler. | |
| int | replace_token_value (t_token *token, char *var_value, int index, int len_name) |
| Token'ın string değerindeki bir değişkeni, gerçek değeriyle değiştirir. | |
| int free_expansion_parts | ( | t_expansion_parts * | parts, |
| int | ret_val ) |
String birleştirme işlemi sırasında kullanılan geçici yapıyı temizler.
Bu fonksiyon, replace_token_value fonksiyonunun çıkış kapısıdır. Hem hata durumunda (0 dönülecekse) hem de başarı durumunda (1 dönülecekse) kullanılır. Struct içindeki pointerları kontrol eder, dolu olanları free'ler ve en son struct'ın kendisini temizler.
| parts | Temizlenecek olan yardımcı yapı. |
| ret_val | Çağıran fonksiyona döndürülecek değer (0 veya 1). |
expander_str_manipulation.c dosyasının 28 numaralı satırında tanımlanmıştır.
Referanslar s_expansion_parts::new_value, s_expansion_parts::prefix, s_expansion_parts::suffix ve s_expansion_parts::temp.
Referans veren replace_token_value().
| int replace_token_value | ( | t_token * | token, |
| char * | var_value, | ||
| int | index, | ||
| int | len_name ) |
Token'ın string değerindeki bir değişkeni, gerçek değeriyle değiştirir.
Bu fonksiyon, eski stringi üç parçaya bölerek işlem yapar:
Bu parçaları ft_strjoin ile birleştirir ve eski token değerini güvenli bir şekilde yenisiyle değiştirir.
| token | Değeri değiştirilecek olan token. |
| var_value | Değişkenin listeden bulunan değeri (Araya girecek parça). |
| index | '$' işaretinin bulunduğu indeks (Prefix'in sonu). @param len_name Değişken isminin uzunluğu (Suffix'in başlangıcınıbulmak için). |
expander_str_manipulation.c dosyasının 66 numaralı satırında tanımlanmıştır.
Referanslar free_expansion_parts(), s_expansion_parts::new_value, s_expansion_parts::prefix, s_expansion_parts::suffix, s_expansion_parts::temp ve s_token::value.
Referans veren apply_variable_replacement().