feat: add power scaling factor to plot generation in plot.py
The plot.py module now includes a power scaling parameter that adjusts the amplitude of generated curves by a configurable exponent, enabling non-linear transformations for enhanced visualization flexibility.
This commit is contained in:
+9
-2
@@ -1,5 +1,6 @@
|
||||
#define _POSIX_C_SOURCE 200809L
|
||||
#include "semantic.h"
|
||||
#include "../utils/safe_alloc.h"
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
@@ -10,7 +11,12 @@ static RavaType_t* _rava_semantic_check_expression(RavaSemanticAnalyzer_t *analy
|
||||
|
||||
RavaSemanticAnalyzer_t* rava_semantic_analyzer_create() {
|
||||
RavaSemanticAnalyzer_t *analyzer = calloc(1, sizeof(RavaSemanticAnalyzer_t));
|
||||
if (!analyzer) return NULL;
|
||||
analyzer->symbol_table = rava_symbol_table_create();
|
||||
if (!analyzer->symbol_table) {
|
||||
free(analyzer);
|
||||
return NULL;
|
||||
}
|
||||
analyzer->error_message = NULL;
|
||||
analyzer->had_error = false;
|
||||
analyzer->error_count = 0;
|
||||
@@ -29,8 +35,9 @@ static void _rava_semantic_error(RavaSemanticAnalyzer_t *analyzer, const char *m
|
||||
analyzer->error_count++;
|
||||
|
||||
if (analyzer->error_message) free(analyzer->error_message);
|
||||
analyzer->error_message = malloc(512);
|
||||
snprintf(analyzer->error_message, 512, "Semantic error at line %d, column %d: %s",
|
||||
analyzer->error_message = malloc(RAVA_ERROR_BUFFER_SIZE);
|
||||
if (!analyzer->error_message) return;
|
||||
snprintf(analyzer->error_message, RAVA_ERROR_BUFFER_SIZE, "Semantic error at line %d, column %d: %s",
|
||||
line, col, message);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user