EscImprovments.diff

Zbigniew Rebacz, 11/17/2016 10:09 PM

Download (1.77 KB)

View differences:

EscStdLib.cpp (kopia robocza)
213 213
	e = cos(e[0].GetNumber());
214 214
}
215 215

  
216
void ESC_pow(EscEscape& e)
217
{
218
	e = pow(e[0].GetNumber(), e[1].GetNumber());
219
}
216 220

  
221
void ESC_pow10(EscEscape& e)
222
{
223
	e = pow10(e[0].GetNumber());
224
}
225

  
226
void ESC_sqrt(EscEscape& e)
227
{
228
	e = sqrt(e[0].GetNumber());
229
}
230

  
231
void ESC_log(EscEscape& e)
232
{
233
	e = log(e[0].GetNumber());
234
}
235

  
236
void ESC_log10(EscEscape& e)
237
{
238
	e = log10(e[0].GetNumber());
239
}
240

  
217 241
bool IsDate(const EscValue& v)
218 242
{
219 243
	return v.HasNumberField("year") && v.HasNumberField("month") && v.HasNumberField("day");
......
259 283
	e = ToUpper(s);
260 284
}
261 285

  
286
// ---------------------------
287

  
288
void ESC_replace(EscEscape& e)
289
{
290
	String str = e[0];
291
	str.Replace(e[1], e[2]);
292
	e = str;
293
}
294

  
295
// ---------------------------
296

  
262 297
void StdLib(ArrayMap<String, EscValue>& global)
263 298
{
264 299
	Escape(global, "is_number(value)", ESC_is_number);
......
275 310
	Escape(global, "reverse(array)", ESC_reverse);
276 311
	Escape(global, "sort(array)", ESC_sort);
277 312
	Escape(global, "order(array)", ESC_order);
278

  
313
	
314
	Escape(global, "replace(str, find, replace)", ESC_replace);
315
	
279 316
	Escape(global, "ToUpper(value)", ESC_ToUpper);
280 317
	Escape(global, "ToLower(value)", ESC_ToLower);
281

  
318
	
282 319
	Escape(global, "len(x)", ESC_count);
283 320
	Escape(global, "mid(array, pos, count)", ESC_mid);
284 321
	Escape(global, "exists(map, key)", ESC_exists);
......
293 330

  
294 331
	Escape(global, "sin(value)", ESC_sin);
295 332
	Escape(global, "cos(value)", ESC_cos);
333
	Escape(global, "pow(value, x)", ESC_pow);
334
	Escape(global, "pow10(value)", ESC_pow10);
335
	Escape(global, "sqrt(value)", ESC_sqrt);
336
	Escape(global, "log(value)", ESC_log);
337
	Escape(global, "log10(value)", ESC_log10);
296 338
}
297 339

  
298 340
}