summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/runstring.cc
diff options
context:
space:
mode:
authorDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
committerDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
commitc6101f91d071883b48b1b4b51e5eba0f36d9a78d (patch)
tree1bf7f5a881d7a4f5c5bf59d0b2821943dd822372 /Build/source/utils/asymptote/runstring.cc
parent07ee7222e389b0777456b427a55c22d0e6ffd267 (diff)
French translation for tlmgr updated
git-svn-id: svn://tug.org/texlive/trunk@57912 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/runstring.cc')
-rw-r--r--Build/source/utils/asymptote/runstring.cc663
1 files changed, 0 insertions, 663 deletions
diff --git a/Build/source/utils/asymptote/runstring.cc b/Build/source/utils/asymptote/runstring.cc
deleted file mode 100644
index 98f10e08f2d..00000000000
--- a/Build/source/utils/asymptote/runstring.cc
+++ /dev/null
@@ -1,663 +0,0 @@
-/***** Autogenerated from runstring.in; changes will be overwritten *****/
-
-#line 1 "runtimebase.in"
-/*****
- * runtimebase.in
- * Andy Hammerlindl 2009/07/28
- *
- * Common declarations needed for all code-generating .in files.
- *
- *****/
-
-
-#line 1 "runstring.in"
-/*****
- * runstring.in
- *
- * Runtime functions for string operations.
- *
- *****/
-
-#line 1 "runtimebase.in"
-#include "stack.h"
-#include "types.h"
-#include "builtin.h"
-#include "entry.h"
-#include "errormsg.h"
-#include "array.h"
-#include "triple.h"
-#include "callable.h"
-#include "opsymbols.h"
-
-using vm::stack;
-using vm::error;
-using vm::array;
-using vm::read;
-using vm::callable;
-using types::formal;
-using types::function;
-using camp::triple;
-
-#define PRIMITIVE(name,Name,asyName) using types::prim##Name;
-#include <primitives.h>
-#undef PRIMITIVE
-
-typedef double real;
-
-void unused(void *);
-
-namespace run {
-array *copyArray(array *a);
-array *copyArray2(array *a);
-array *copyArray3(array *a);
-
-double *copyTripleArray2Components(array *a, size_t &N,
- GCPlacement placement=NoGC);
-triple *copyTripleArray2C(array *a, size_t &N,
- GCPlacement placement=NoGC);
-}
-
-function *realRealFunction();
-
-#define CURRENTPEN processData().currentpen
-
-#line 10 "runstring.in"
-#include <cfloat>
-#include <cstring>
-#include <algorithm>
-
-#include "array.h"
-
-using namespace camp;
-using namespace vm;
-using namespace settings;
-
-typedef array stringarray;
-typedef array stringarray2;
-
-using types::stringArray;
-using types::stringArray2;
-
-namespace types {
-extern const char *names[];
-}
-
-namespace run {
-extern string emptystring;
-}
-
-static const string defaulttimeformat=string("%a %b %d %T %Z %Y");
-#ifdef HAVE_STRFTIME
-static const size_t nTime=256;
-static char Time[nTime];
-#endif
-
-void checkformat(const char *ptr, bool intformat)
-{
- while(*ptr != '\0') {
- if(*ptr != '%') /* While we have regular characters, print them. */
- ptr++;
- else { /* We've got a format specifier. */
- ptr++;
-
- while(*ptr && strchr ("-+ #0'I", *ptr)) /* Move past flags. */
- ptr++;
-
- if(*ptr == '*')
- ptr++;
- else while(isdigit(*ptr)) /* Handle explicit numeric value. */
- ptr++;
-
- if(*ptr == '.') {
- ptr++; /* Go past the period. */
- if(*ptr == '*') {
- ptr++;
- } else
- while(isdigit(*ptr)) /* Handle explicit numeric value. */
- ptr++;
- }
- while(*ptr && strchr ("hlL", *ptr))
- ptr++;
-
- if(*ptr == '%') {++ptr; continue;}
- else if(*ptr != '\0') {
- if(intformat) {
- switch(*ptr) {
- case 'd':
- case 'i':
- case 'o':
- case 'u':
- case 'x':
- case 'X':
- case 'c':
- break;
- default:
- ostringstream buf;
- buf << "Invalid format '" << *ptr << "' for type "
- << types::names[types::ty_Int];
- error(buf);
- break;
- }
- } else {
- switch(*ptr) {
- case 'f':
- case 'F':
- case 'e':
- case 'E':
- case 'g':
- case 'G':
- break;
- default:
- ostringstream buf;
- buf << "Invalid format '" << *ptr << "' for type "
- << types::names[types::ty_real];
- error(buf);
- break;
- }
- }
- }
- break; // Only one argument is allowed.
- } /* End of else statement */
- }
-}
-
-// Autogenerated routines:
-
-
-
-#ifndef NOSYM
-#include "runstring.symbols.h"
-
-#endif
-namespace run {
-// String operations
-#line 113 "runstring.in"
-void emptyString(stack *Stack)
-{
-#line 114 "runstring.in"
- {Stack->push<string>(emptystring); return;}
-}
-
-#line 119 "runstring.in"
-// Int length(string *s);
-void gen_runstring1(stack *Stack)
-{
- string * s=vm::pop<string *>(Stack);
-#line 120 "runstring.in"
- {Stack->push<Int>((Int) s->length()); return;}
-}
-
-#line 124 "runstring.in"
-// Int find(string *s, string t, Int pos=0);
-void gen_runstring2(stack *Stack)
-{
- Int pos=vm::pop<Int>(Stack,0);
- string t=vm::pop<string>(Stack);
- string * s=vm::pop<string *>(Stack);
-#line 125 "runstring.in"
- size_t n=s->find(t,pos);
- {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;}
-}
-
-#line 130 "runstring.in"
-// Int rfind(string *s, string t, Int pos=-1);
-void gen_runstring3(stack *Stack)
-{
- Int pos=vm::pop<Int>(Stack,-1);
- string t=vm::pop<string>(Stack);
- string * s=vm::pop<string *>(Stack);
-#line 131 "runstring.in"
- size_t n=s->rfind(t,pos);
- {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;}
-}
-
-#line 136 "runstring.in"
-// string reverse(string s);
-void gen_runstring4(stack *Stack)
-{
- string s=vm::pop<string>(Stack);
-#line 137 "runstring.in"
- reverse(s.begin(),s.end());
- {Stack->push<string>(s); return;}
-}
-
-#line 142 "runstring.in"
-// string insert(string s, Int pos, string t);
-void gen_runstring5(stack *Stack)
-{
- string t=vm::pop<string>(Stack);
- Int pos=vm::pop<Int>(Stack);
- string s=vm::pop<string>(Stack);
-#line 143 "runstring.in"
- if ((size_t) pos < s.length())
- {Stack->push<string>(s.insert(pos,t)); return;}
- {Stack->push<string>(s); return;}
-}
-
-#line 149 "runstring.in"
-// string substr(string* s, Int pos, Int n=-1);
-void gen_runstring6(stack *Stack)
-{
- Int n=vm::pop<Int>(Stack,-1);
- Int pos=vm::pop<Int>(Stack);
- string* s=vm::pop<string*>(Stack);
-#line 150 "runstring.in"
- if ((size_t) pos < s->length())
- {Stack->push<string>(s->substr(pos,n)); return;}
- {Stack->push<string>(emptystring); return;}
-}
-
-#line 156 "runstring.in"
-// string erase(string s, Int pos, Int n);
-void gen_runstring7(stack *Stack)
-{
- Int n=vm::pop<Int>(Stack);
- Int pos=vm::pop<Int>(Stack);
- string s=vm::pop<string>(Stack);
-#line 157 "runstring.in"
- if ((size_t) pos < s.length())
- {Stack->push<string>(s.erase(pos,n)); return;}
- {Stack->push<string>(s); return;}
-}
-
-#line 163 "runstring.in"
-// string downcase(string s);
-void gen_runstring8(stack *Stack)
-{
- string s=vm::pop<string>(Stack);
-#line 164 "runstring.in"
- std::transform(s.begin(),s.end(),s.begin(),tolower);
- {Stack->push<string>(s); return;}
-}
-
-#line 169 "runstring.in"
-// string upcase(string s);
-void gen_runstring9(stack *Stack)
-{
- string s=vm::pop<string>(Stack);
-#line 170 "runstring.in"
- std::transform(s.begin(),s.end(),s.begin(),toupper);
- {Stack->push<string>(s); return;}
-}
-
-// returns a string constructed by translating all occurrences of the string
-// from in an array of string pairs {from,to} to the string to in string s.
-#line 177 "runstring.in"
-// string replace(string *S, stringarray2 *translate);
-void gen_runstring10(stack *Stack)
-{
- stringarray2 * translate=vm::pop<stringarray2 *>(Stack);
- string * S=vm::pop<string *>(Stack);
-#line 178 "runstring.in"
- size_t size=checkArray(translate);
- for(size_t i=0; i < size; i++) {
- array *a=read<array*>(translate,i);
- checkArray(a);
- }
- size_t pos=0;
- ostringstream buf;
- size_t Len=S->length();
-
- while(pos < Len) {
- for(size_t i=0; i < size;) {
- array *a=read<array*>(translate,i);
- size_t size2=checkArray(a);
- if(size2 != 2)
- error("translation table entry must be an array of length 2");
- string* from=read<string*>(a,0);
- size_t len=from->length();
- if(len == 0 || S->compare(pos,len,*from,0,len) != 0) {i++; continue;}
- buf << read<string>(a,1);
- pos += len;
- if(pos == Len) {Stack->push<string>(buf.str()); return;}
- i=0;
- }
- buf << S->substr(pos,1);
- ++pos;
- }
- {Stack->push<string>(buf.str()); return;}
-}
-
-#line 208 "runstring.in"
-// string format(string *format, Int x, string locale=emptystring);
-void gen_runstring11(stack *Stack)
-{
- string locale=vm::pop<string>(Stack,emptystring);
- Int x=vm::pop<Int>(Stack);
- string * format=vm::pop<string *>(Stack);
-#line 209 "runstring.in"
- ostringstream out;
- const char *p0=format->c_str();
- checkformat(p0,true);
-
- const char *p=p0;
- const char *start=NULL;
- while(*p != 0) {
- char curr=*p;
- if(curr == '%') {
- p++;
- if(*p != '%') {start=p-1; break;}
- }
- out << *(p++);
- }
-
- if(!start) {Stack->push<string>(out.str()); return;}
-
- // Allow at most 1 argument
- while(*p != 0) {
- if(*p == '*' || *p == '$') {Stack->push<string>(out.str()); return;}
- if(isupper(*p) || islower(*p)) {p++; break;}
- p++;
- }
-
- string f=format->substr(start-p0,p-start);
-
- const char *oldlocale=NULL;
-
- if(!locale.empty()) {
- oldlocale=setlocale(LC_ALL,NULL);
- if(oldlocale) oldlocale=StrdupNoGC(oldlocale);
- setlocale(LC_ALL,locale.c_str());
- }
-
- Int size=snprintf(NULL,0,f.c_str(),x)+1;
- if(size < 1) size=255; // Workaround for non-C99 compliant systems.
- char *buf=new char[size];
- snprintf(buf,size,f.c_str(),x);
-
- out << string(buf);
- out << p;
-
- delete[] buf;
-
- if(oldlocale) {
- setlocale(LC_ALL,oldlocale);
- delete[] oldlocale;
- }
-
- {Stack->push<string>(out.str()); return;}
-}
-
-#line 262 "runstring.in"
-// string format(string *format, bool forcemath=false, string separator, real x, string locale=emptystring);
-void gen_runstring12(stack *Stack)
-{
- string locale=vm::pop<string>(Stack,emptystring);
- real x=vm::pop<real>(Stack);
- string separator=vm::pop<string>(Stack);
- bool forcemath=vm::pop<bool>(Stack,false);
- string * format=vm::pop<string *>(Stack);
-#line 264 "runstring.in"
- if(*format == "%") {Stack->push<string>(""); return;} // Temporary workaround for github Issue #29.
-
- bool tex=getSetting<string>("tex") != "none";
- bool texify=forcemath;
- ostringstream out;
-
- const char *p0=format->c_str();
- checkformat(p0,false);
-
- const char *phantom="\\phantom{+}";
-
- const char *p=p0;
- const char *start=NULL;
- char prev=0;
- while(*p != 0) {
- char curr=*p;
- if(tex && curr == '$' && prev != '\\') texify=true;
- prev=curr;
- if(curr == '%') {
- p++;
- if(*p != '%') {start=p-1; break;}
- }
- out << *(p++);
- }
-
- if(!start) {Stack->push<string>(out.str()); return;}
-
- // Allow at most 1 argument
- while(*p != 0) {
- if(*p == '*' || *p == '$') {Stack->push<string>(out.str()); return;}
- if(isupper(*p) || islower(*p)) {p++; break;}
- p++;
- }
-
- const char *tail=p;
- string f=format->substr(start-p0,tail-start);
-
- const char *oldlocale=NULL;
- if(!locale.empty()) {
- oldlocale=setlocale(LC_ALL,NULL);
- if(oldlocale) oldlocale=StrdupNoGC(oldlocale);
- setlocale(LC_ALL,locale.c_str());
- }
-
- Int size=snprintf(NULL,0,f.c_str(),x)+1;
- if(size < 1) size=255; // Workaround for non-C99 compliant systems.
- char *buf=new char[size];
- snprintf(buf,size,f.c_str(),x);
-
- bool trailingzero=f.find("#") < string::npos;
- bool plus=f.find("+") < string::npos;
- bool space=f.find(" ") < string::npos;
-
- char *q=buf; // beginning of formatted number
-
- if(*q == ' ' && texify) {
- out << phantom;
- q++;
- }
-
- const char decimal=*(localeconv()->decimal_point);
-
- // Remove any spurious sign
- if(*q == '-' || *q == '+') {
- p=q+1;
- bool zero=true;
- while(*p != 0) {
- if(!isdigit(*p) && *p != decimal) break;
- if(isdigit(*p) && *p != '0') {zero=false; break;}
- p++;
- }
- if(zero) {
- q++;
- if((plus || space) && texify) out << phantom;
- }
- }
-
- const char *r=p=q;
- bool dp=false;
- while(*r != 0 && (isspace(*r) || isdigit(*r) || *r == decimal \
- || *r == '+' || *r == '-')) {
- if(*r == decimal) dp=true;
- r++;
- }
- if(dp) { // Remove trailing zeros and/or decimal point
- r--;
- unsigned n=0;
- while(r > q && *r == '0') {r--; n++;}
- if(*r == decimal) {r--; n++;}
- while(q <= r) out << *(q++);
- if(!trailingzero) q += n;
- }
-
- bool zero=(r == p && *r == '0') && !trailingzero;
-
- // Translate "E+/E-/e+/e-" exponential notation to TeX
- while(*q != 0) {
- if(texify && (*q == 'E' || *q == 'e') &&
- (*(q+1) == '+' || *(q+1) == '-')) {
- if(!zero) out << separator << "10^{";
- bool plus=(*(q+1) == '+');
- q++;
- if(plus) q++;
- if(*q == '-') out << *(q++);
- while(*q == '0' && (zero || isdigit(*(q+1)))) q++;
- while(isdigit(*q)) out << *(q++);
- if(!zero)
- out << "}";
- break;
- }
- out << *(q++);
- }
-
- while(*tail != 0)
- out << *(tail++);
-
- delete[] buf;
-
- if(oldlocale) {
- setlocale(LC_ALL,oldlocale);
- delete[] oldlocale;
- }
-
- {Stack->push<string>(out.str()); return;}
-}
-
-#line 391 "runstring.in"
-// Int hex(string s);
-void gen_runstring13(stack *Stack)
-{
- string s=vm::pop<string>(Stack);
-#line 392 "runstring.in"
- istringstream is(s);
- is.setf(std::ios::hex,std::ios::basefield);
- Int value;
- if(is && is >> value && ((is >> std::ws).eof())) {Stack->push<Int>(value); return;}
- ostringstream buf;
- buf << "invalid hexadecimal cast from string \"" << s << "\"";
- error(buf);
-}
-
-#line 402 "runstring.in"
-// Int ascii(string s);
-void gen_runstring14(stack *Stack)
-{
- string s=vm::pop<string>(Stack);
-#line 403 "runstring.in"
- {Stack->push<Int>(s.empty() ? -1 : (unsigned char) s[0]); return;}
-}
-
-#line 407 "runstring.in"
-// string string(Int x);
-void gen_runstring15(stack *Stack)
-{
- Int x=vm::pop<Int>(Stack);
-#line 408 "runstring.in"
- ostringstream buf;
- buf << x;
- {Stack->push<string>(buf.str()); return;}
-}
-
-#line 414 "runstring.in"
-// string string(real x, Int digits=DBL_DIG);
-void gen_runstring16(stack *Stack)
-{
- Int digits=vm::pop<Int>(Stack,DBL_DIG);
- real x=vm::pop<real>(Stack);
-#line 415 "runstring.in"
- ostringstream buf;
- buf.precision(digits);
- buf << x;
- {Stack->push<string>(buf.str()); return;}
-}
-
-#line 422 "runstring.in"
-// string time(string format=defaulttimeformat);
-void gen_runstring17(stack *Stack)
-{
- string format=vm::pop<string>(Stack,defaulttimeformat);
-#line 423 "runstring.in"
-#ifdef HAVE_STRFTIME
- const time_t bintime=time(NULL);
- if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;}
- {Stack->push<string>(Time); return;}
-#else
- {Stack->push<string>(format); return;}
-#endif
-}
-
-#line 433 "runstring.in"
-// string time(Int seconds, string format=defaulttimeformat);
-void gen_runstring18(stack *Stack)
-{
- string format=vm::pop<string>(Stack,defaulttimeformat);
- Int seconds=vm::pop<Int>(Stack);
-#line 434 "runstring.in"
-#ifdef HAVE_STRFTIME
- const time_t bintime=seconds;
- if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;}
- {Stack->push<string>(Time); return;}
-#else
-// Avoid unused variable warning messages
- unused(&seconds);
- {Stack->push<string>(format); return;}
-#endif
-}
-
-#line 446 "runstring.in"
-// Int seconds(string t=emptystring, string format=emptystring);
-void gen_runstring19(stack *Stack)
-{
- string format=vm::pop<string>(Stack,emptystring);
- string t=vm::pop<string>(Stack,emptystring);
-#line 447 "runstring.in"
-#if defined(HAVE_STRPTIME)
- const time_t bintime=time(NULL);
- tm tm=*localtime(&bintime);
- if(t != "" && !strptime(t.c_str(),format.c_str(),&tm)) {Stack->push<Int>(-1); return;}
- {Stack->push<Int>((Int) mktime(&tm)); return;}
-#else
- {Stack->push<Int>(-1); return;}
-#endif
-}
-
-} // namespace run
-
-namespace trans {
-
-void gen_runstring_venv(venv &ve)
-{
-#line 112 "runstring.in"
- REGISTER_BLTIN(run::emptyString,"emptyString");
-#line 119 "runstring.in"
- addFunc(ve, run::gen_runstring1, primInt(), SYM(length), formal(primString(), SYM(s), false, false));
-#line 124 "runstring.in"
- addFunc(ve, run::gen_runstring2, primInt(), SYM(find), formal(primString(), SYM(s), false, false), formal(primString(), SYM(t), false, false), formal(primInt(), SYM(pos), true, false));
-#line 130 "runstring.in"
- addFunc(ve, run::gen_runstring3, primInt(), SYM(rfind), formal(primString(), SYM(s), false, false), formal(primString(), SYM(t), false, false), formal(primInt(), SYM(pos), true, false));
-#line 136 "runstring.in"
- addFunc(ve, run::gen_runstring4, primString(), SYM(reverse), formal(primString(), SYM(s), false, false));
-#line 142 "runstring.in"
- addFunc(ve, run::gen_runstring5, primString(), SYM(insert), formal(primString(), SYM(s), false, false), formal(primInt(), SYM(pos), false, false), formal(primString(), SYM(t), false, false));
-#line 149 "runstring.in"
- addFunc(ve, run::gen_runstring6, primString(), SYM(substr), formal(primString(), SYM(s), false, false), formal(primInt(), SYM(pos), false, false), formal(primInt(), SYM(n), true, false));
-#line 156 "runstring.in"
- addFunc(ve, run::gen_runstring7, primString(), SYM(erase), formal(primString(), SYM(s), false, false), formal(primInt(), SYM(pos), false, false), formal(primInt(), SYM(n), false, false));
-#line 163 "runstring.in"
- addFunc(ve, run::gen_runstring8, primString(), SYM(downcase), formal(primString(), SYM(s), false, false));
-#line 169 "runstring.in"
- addFunc(ve, run::gen_runstring9, primString(), SYM(upcase), formal(primString(), SYM(s), false, false));
-#line 175 "runstring.in"
- addFunc(ve, run::gen_runstring10, primString(), SYM(replace), formal(primString(), SYM(s), false, false), formal(stringArray2(), SYM(translate), false, false));
-#line 208 "runstring.in"
- addFunc(ve, run::gen_runstring11, primString(), SYM(format), formal(primString(), SYM(format), false, false), formal(primInt(), SYM(x), false, false), formal(primString(), SYM(locale), true, false));
-#line 262 "runstring.in"
- addFunc(ve, run::gen_runstring12, primString(), SYM(format), formal(primString(), SYM(format), false, false), formal(primBoolean(), SYM(forcemath), true, false), formal(primString(), SYM(separator), false, false), formal(primReal(), SYM(x), false, false), formal(primString(), SYM(locale), true, false));
-#line 391 "runstring.in"
- addFunc(ve, run::gen_runstring13, primInt(), SYM(hex), formal(primString(), SYM(s), false, false));
-#line 402 "runstring.in"
- addFunc(ve, run::gen_runstring14, primInt(), SYM(ascii), formal(primString(), SYM(s), false, false));
-#line 407 "runstring.in"
- addFunc(ve, run::gen_runstring15, primString(), SYM(string), formal(primInt(), SYM(x), false, false));
-#line 414 "runstring.in"
- addFunc(ve, run::gen_runstring16, primString(), SYM(string), formal(primReal(), SYM(x), false, false), formal(primInt(), SYM(digits), true, false));
-#line 422 "runstring.in"
- addFunc(ve, run::gen_runstring17, primString(), SYM(time), formal(primString(), SYM(format), true, false));
-#line 433 "runstring.in"
- addFunc(ve, run::gen_runstring18, primString(), SYM(time), formal(primInt(), SYM(seconds), false, false), formal(primString(), SYM(format), true, false));
-#line 446 "runstring.in"
- addFunc(ve, run::gen_runstring19, primInt(), SYM(seconds), formal(primString(), SYM(t), true, false), formal(primString(), SYM(format), true, false));
-}
-
-} // namespace trans