Contexte Sass
Les contextes Sass existent en deux versions :
- Sass_File_Context
- Sass_Data_Context
Utilisation de base
- #include "sass/context.h"
Sass_Options
- // Précision pour les nombres fractionnaires
- int precision;
-
- // Style de sortie pour le code CSS généré. Une valeur des constantes SASS_STYLE_* ci-dessus.
- int output_style;
-
- // Émettre des commentaires dans le CSS généré indiquant la ligne source correspondante.
- bool source_comments;
-
- // intégrer sourceMappingUrl comme URI de données
- bool source_map_embed;
-
- // incorporer le contenu inclus dans les cartes
- bool source_map_contents;
-
- // créer des URL de fichiers pour les sources
- bool source_map_file_urls;
-
- // Désactiver sourceMappingUrl dans la sortie CSS
- bool omit_source_map_url;
-
- // Traitez source_string comme sass (par opposition à scss)
- bool is_indented_syntax_src;
-
- // Le chemin d'entrée est utilisé pour la génération de la carte source. Il peut être utilisé pour définir quelque chose avec
- // la compilation de chaînes ou pour surcharger le chemin du fichier d'entrée. Il est défini sur « stdin » pour les contextes
- // de données et sur le fichier d'entrée pour les contextes de fichiers.
- char* input_path;
-
- // Le chemin de sortie est utilisé pour la génération de la carte source.
- // LibSass n'écrira pas dans ce fichier, il est simplement utilisé pour créer des informations dans les cartes source,...
- char* output_path;
-
- // Chaîne de caractères à utiliser pour l'indentation
- const char* indent;
-
- // Chaîne de caractères à utiliser pour les sauts de ligne
- const char* linefeed;
-
- // Liste de chemins séparés par des deux-points
- // Séparés par des points-virgules sous Windows
- char* include_path;
- char* plugin_path;
-
- // Chemins d'inclusion supplémentaires
- // Doivent être délimités par des valeurs nulles
- char** include_paths;
- char** plugin_paths;
-
- // Chemin d'accès au fichier source map
- // Active la génération de la carte source
- // Utilisé pour créer l'URL sourceMappingUrl
- char* source_map_file;
-
- // Directement inséré dans les cartes sources
- char* source_map_root;
-
- // Fonctions personnalisées pouvant être appelées à partir du code Sass
- Sass_C_Function_List c_functions;
-
- // Rappel pour surcharger les importations
- Sass_C_Import_Callback importer;
Sass_Context
- // entreposer les informations sur le type de contexte
- enum Sass_Input_Style type;
-
- // données de sortie générées
- char* output_string;
-
- // carte source json générée
- char* source_map_string;
-
- // état d'erreur
- int error_status;
- char* error_json;
- char* error_text;
- char* error_message;
- // position d'erreur
- char* error_file;
- size_t error_line;
- size_t error_column;
- char* error_src;
-
- // signaler les fichiers importés
- char** included_files;
Sass_File_Context
- // aucun champ supplémentaire requis
- // input_path est déjà activé
Sass_Data_Context
- // chaîne de caractères source fournie
- char* source_string;
API de contexte Sass
- // Déclaration anticipée
- struct Sass_Compiler;
-
- // Déclaration anticipée
- struct Sass_Options;
- struct Sass_Context; // : Sass_Options
- struct Sass_File_Context; // : Sass_Context
- struct Sass_Data_Context; // : Sass_Context
-
- // Créer et initialiser une structure d'options
- struct Sass_Options* sass_make_options (void);
- // Créer et initialiser un contexte spécifique
- struct Sass_File_Context* sass_make_file_context (const char* input_path);
- struct Sass_Data_Context* sass_make_data_context (char* source_string);
-
- // Appeler l'étape de compilation pour le contexte spécifique
- int sass_compile_file_context (struct Sass_File_Context* ctx);
- int sass_compile_data_context (struct Sass_Data_Context* ctx);
-
- // Créez une instance de compilateur sass pour plus de contrôle
- struct Sass_Compiler* sass_make_file_compiler (struct Sass_File_Context* file_ctx);
- struct Sass_Compiler* sass_make_data_compiler (struct Sass_Data_Context* data_ctx);
-
- // Exécuter les différentes étapes de compilation individuellement
- // Utile si vous souhaitez interroger uniquement les fichiers inclus
- int sass_compiler_parse (struct Sass_Compiler* compiler);
- int sass_compiler_execute (struct Sass_Compiler* compiler);
-
- // Libérer toute la mémoire allouée avec le compilateur
- // Ceci n'inclut _not_ de contextes ou d'options
- void sass_delete_compiler (struct Sass_Compiler* compiler);
- void sass_delete_options(struct Sass_Options* options);
-
- // Libérer toute la mémoire allouée et nous-mêmes
- void sass_delete_file_context (struct Sass_File_Context* ctx);
- void sass_delete_data_context (struct Sass_Data_Context* ctx);
-
- // Getters pour le contexte d'une implémentation spécifique
- struct Sass_Context* sass_file_context_get_context (struct Sass_File_Context* file_ctx);
- struct Sass_Context* sass_data_context_get_context (struct Sass_Data_Context* data_ctx);
-
- // Getters pour Context_Options de Sass_Context
- struct Sass_Options* sass_context_get_options (struct Sass_Context* ctx);
- struct Sass_Options* sass_file_context_get_options (struct Sass_File_Context* file_ctx);
- struct Sass_Options* sass_data_context_get_options (struct Sass_Data_Context* data_ctx);
- void sass_file_context_set_options (struct Sass_File_Context* file_ctx, struct Sass_Options* opt);
- void sass_data_context_set_options (struct Sass_Data_Context* data_ctx, struct Sass_Options* opt);
-
- // Getters pour les valeurs Sass_Context
- const char* sass_context_get_output_string (struct Sass_Context* ctx);
- int sass_context_get_error_status (struct Sass_Context* ctx);
- const char* sass_context_get_error_json (struct Sass_Context* ctx);
- const char* sass_context_get_error_text (struct Sass_Context* ctx);
- const char* sass_context_get_error_message (struct Sass_Context* ctx);
- const char* sass_context_get_error_file (struct Sass_Context* ctx);
- const char* sass_context_get_error_src (struct Sass_Context* ctx);
- size_t sass_context_get_error_line (struct Sass_Context* ctx);
- size_t sass_context_get_error_column (struct Sass_Context* ctx);
- const char* sass_context_get_source_map_string (struct Sass_Context* ctx);
- char** sass_context_get_included_files (struct Sass_Context* ctx);
-
- // Getters pour les options Sass_Compiler (pile d'importation de requêtes)
- size_t sass_compiler_get_import_stack_size(struct Sass_Compiler* compiler);
- Sass_Import_Entry sass_compiler_get_last_import(struct Sass_Compiler* compiler);
- Sass_Import_Entry sass_compiler_get_import_entry(struct Sass_Compiler* compiler, size_t idx);
- // Getters for Sass_Compiler options (query function stack)
- size_t sass_compiler_get_callee_stack_size(struct Sass_Compiler* compiler);
- Sass_Callee_Entry sass_compiler_get_last_callee(struct Sass_Compiler* compiler);
- Sass_Callee_Entry sass_compiler_get_callee_entry(struct Sass_Compiler* compiler, size_t idx);
-
- // Prendre possession de la mémoire (la valeur du contexte est définie sur 0)
- char* sass_context_take_error_json (struct Sass_Context* ctx);
- char* sass_context_take_error_text (struct Sass_Context* ctx);
- char* sass_context_take_error_message (struct Sass_Context* ctx);
- char* sass_context_take_error_file (struct Sass_Context* ctx);
- char* sass_context_take_error_src (struct Sass_Context* ctx);
- char* sass_context_take_output_string (struct Sass_Context* ctx);
- char* sass_context_take_source_map_string (struct Sass_Context* ctx);
API d'options Sass
- // Getters pour les valeurs Context_Option
- int sass_option_get_precision (struct Sass_Options* options);
- enum Sass_Output_Style sass_option_get_output_style (struct Sass_Options* options);
- bool sass_option_get_source_comments (struct Sass_Options* options);
- bool sass_option_get_source_map_embed (struct Sass_Options* options);
- bool sass_option_get_source_map_contents (struct Sass_Options* options);
- bool sass_option_get_source_map_file_urls (struct Sass_Options* options);
- bool sass_option_get_omit_source_map_url (struct Sass_Options* options);
- bool sass_option_get_is_indented_syntax_src (struct Sass_Options* options);
- const char* sass_option_get_indent (struct Sass_Options* options);
- const char* sass_option_get_linefeed (struct Sass_Options* options);
- const char* sass_option_get_input_path (struct Sass_Options* options);
- const char* sass_option_get_output_path (struct Sass_Options* options);
- const char* sass_option_get_source_map_file (struct Sass_Options* options);
- const char* sass_option_get_source_map_root (struct Sass_Options* options);
- Sass_C_Function_List sass_option_get_c_functions (struct Sass_Options* options);
- Sass_C_Import_Callback sass_option_get_importer (struct Sass_Options* options);
-
- // Les getters pour Context_Option incluent un tableau de chemins
- size_t sass_option_get_include_path_size(struct Sass_Options* options);
- const char* sass_option_get_include_path(struct Sass_Options* options, size_t i);
- // Les chemins des plugins pour charger les bibliothèques dynamiques fonctionnent de la même manière
- size_t sass_option_get_plugin_path_size(struct Sass_Options* options);
- const char* sass_option_get_plugin_path(struct Sass_Options* options, size_t i);
-
- // Setters pour les valeurs Context_Option
- void sass_option_set_precision (struct Sass_Options* options, int precision);
- void sass_option_set_output_style (struct Sass_Options* options, enum Sass_Output_Style output_style);
- void sass_option_set_source_comments (struct Sass_Options* options, bool source_comments);
- void sass_option_set_source_map_embed (struct Sass_Options* options, bool source_map_embed);
- void sass_option_set_source_map_contents (struct Sass_Options* options, bool source_map_contents);
- void sass_option_set_source_map_file_urls (struct Sass_Options* options, bool source_map_file_urls);
- void sass_option_set_omit_source_map_url (struct Sass_Options* options, bool omit_source_map_url);
- void sass_option_set_is_indented_syntax_src (struct Sass_Options* options, bool is_indented_syntax_src);
- void sass_option_set_indent (struct Sass_Options* options, const char* indent);
- void sass_option_set_linefeed (struct Sass_Options* options, const char* linefeed);
- void sass_option_set_input_path (struct Sass_Options* options, const char* input_path);
- void sass_option_set_output_path (struct Sass_Options* options, const char* output_path);
- void sass_option_set_plugin_path (struct Sass_Options* options, const char* plugin_path);
- void sass_option_set_include_path (struct Sass_Options* options, const char* include_path);
- void sass_option_set_source_map_file (struct Sass_Options* options, const char* source_map_file);
- void sass_option_set_source_map_root (struct Sass_Options* options, const char* source_map_root);
- void sass_option_set_c_functions (struct Sass_Options* options, Sass_C_Function_List c_functions);
- void sass_option_set_importer (struct Sass_Options* options, Sass_C_Import_Callback importer);
-
- // Fonction push pour les chemins (pas de support de manipulation pour le moment)
- void sass_option_push_plugin_path (struct Sass_Options* options, const char* path);
- void sass_option_push_include_path (struct Sass_Options* options, const char* path);
-
- // Résout un fichier via les chemins d'inclusion indiqués dans la structure d'options Sass
- // find_file recherche le nom exact du fichier, tandis que find_include effectue une inclusion Sass classique
- char* sass_find_file (const char* path, struct Sass_Options* opt);
- char* sass_find_include (const char* path, struct Sass_Options* opt);
-
- // Résout un fichier par rapport à la dernière importation ou inclut les chemins dans la structure d'options Sass
- // find_file recherche le nom exact du fichier, tandis que find_include effectue une inclusion Sass classique
- char* sass_compiler_find_file (const char* path, struct Sass_Compiler* compiler);
- char* sass_compiler_find_include (const char* path, struct Sass_Compiler* compiler);
Autres liens
Dernière mise à jour : Mardi, le 8 octobre 2024