lexとyaccを使用してテキストを解析するプログラムを作成していますが、さまざまなコンテンツのパーサーを作成する必要があります。stdinを使用したくないのですが、FILE * yyinを使用して入力を指定すると、ソースを変更できます。ライブラリ解析(lexファイルとyaccファイルで作成)から関数を呼び出して、このコンテンツを解析し、結果を受け取る必要があります。
/**
* This i don't know is possible, receive a char * and return a FILE*
*/
FILE *function_parse_to_file(char* text){
FILE *fp = NULL;
/**
* is really necessary create a temporary file with content text?
*/
return fp
}
/**
* I need call from other library or application
*/
char *function_parse_from_lex(char* text){
yyin = function_parse_to_file(text);
init();
yyparse();
fclose(yyin);
}