534 Commits

Author SHA1 Message Date
jos
d08223e7a5 Implemented functions equalText. See #1085. 2018-05-27 14:13:17 +02:00
jos
94accc1889 Implemented function compareText, see #1085 2018-05-26 18:41:31 +02:00
jos
33dbe23bb7 Released v4.3.0 2018-05-21 11:57:11 +02:00
jos
29aebc51b4 Updated history 2018-05-05 21:16:29 +02:00
jos
6308e5b7fc Added missing embedded docs 2018-05-02 09:51:08 +02:00
Harry Sarson
29aeb4700f
ensure all files end with trailing \n 2018-04-27 21:41:02 +01:00
Harry Sarson
af417d8384
add use strict to the top of a bunch of files 2018-04-27 21:28:28 +01:00
jos
b7b8b2af49 Released version 4.1.0 2018-04-08 20:17:36 +02:00
jos
7fefa33d84 Fixed #1077: Serialization/deserialization to JSON with reviver not being supported by nodes 2018-04-04 22:09:43 +02:00
jos
82eec1078e Fixed #1016: Extended math.typeof with support for ResultSet and nodes like SymbolNode 2018-04-04 11:24:45 +02:00
jos
99ab11b234 Dropped constant uninitialized 2018-02-04 13:09:09 +01:00
Jos de Jong
e631771df0
Merge branch 'v4' into v4_fn_implicit_multiplication 2018-02-04 11:58:15 +01:00
Jos de Jong
cdda817d9f
Merge pull request #1036 from ericman314/implicit-multiplication
Implicit multiplication
2018-02-04 11:55:15 +01:00
Eric Mansfield
83862d2996 Refactored token state history into own function 2018-02-03 14:19:48 -07:00
jos
11b4c03460 Remove support for calling a function returned by a function, parse as implicit multiplication instead. See #1035 2018-02-03 21:52:18 +01:00
Eric Mansfield
090f4c920f Added 'number/number (', and tests 2018-02-03 09:44:30 -07:00
Eric Mansfield
b50d4fe2f1 Adjusted "rule 2" to match "number / number symbol" 2018-02-03 08:16:46 -07:00
jos
a11dfa9bcc Merge branch 'v4' into v4_binary_operator_node 2018-01-31 14:23:34 +01:00
jos
ece963bcdd Merge branch 'develop' into v4
# Conflicts:
#	lib/expression/node/ConstantNode.js
2018-01-31 11:28:14 +01:00
jos
82b41e696a - Implemented OperatorNode.isUnary and OperatorNode.isBinary.
- Explicit checks for number of arguments everywhere working with `OperatorNode` and `FunctionNode`.
- Fixed #1014: derivative silently ignoring additional arguments.
2018-01-31 11:00:39 +01:00
Max Bruckner
9126130794 toTex: Escape special characters in strings 2018-01-31 02:54:24 +01:00
jos
0b6c0c13f7 Merge branch 'v4' into v4_constant_node
# Conflicts:
#	HISTORY.md
2018-01-27 16:58:17 +01:00
jos
5efbb25da8 Merge branch 'develop' into v4
# Conflicts:
#	HISTORY.md
2018-01-27 16:57:24 +01:00
Harry Sarson
afbbb0ea8a
fixes mapping of implicit multiplication 2018-01-27 15:07:31 +00:00
Max Bruckner
4a7e956242 ConstantNode: Add Fraction specific latex output. 2018-01-25 20:14:06 +01:00
jos
f112348eec Fixed using the wrong typeof function which was not aware of mathjs types like BigNumber (see #1023) 2018-01-25 20:07:07 +01:00
jos
3f3d50f7a0 Fixed #833: the constants true, false, null, undefined, NaN, Infinity, and uninitialized are now parsed as ConstantNodes instead of SymbolNodes in the expression parser 2018-01-23 13:55:57 +01:00
jos
924299c42b Changed ConstantNode(valueStr, valueType) to ConstantNode(value) (breaking change) 2018-01-23 12:08:29 +01:00
jos
ef607935bd Replaced == with === 2018-01-23 09:29:34 +01:00
jos
53e02a87e3 Cleanup unused imports and functions 2018-01-23 09:27:24 +01:00
jos
8b5396baad Removed the old expression compiler (which uses eval) 2018-01-23 09:19:11 +01:00
jos
1192bb6bbc Implemented compile without eval (see #1019) 2018-01-21 18:13:27 +01:00
jos
316cb8761e Fixed #969: preven issues with yarn autoclean by renaming an interally used folder "docs" to "embeddedDocs" 2017-12-16 20:33:23 +01:00
jos
270d28b8d2 Update history, add embedded docs for rationalize 2017-12-02 20:34:40 +01:00
jos
a60f3c8d9d Fixed a security issue where forbidden properties like constructor could be replaced by using unicode characters when creating an object 2017-11-18 20:11:48 +01:00
jos
8d2d48d81b Fixed a security issue in typed-function allowing arbitrary code execution 2017-11-18 19:39:30 +01:00
ericman314
fb9bf5eab1 Added parseFraction
Added parseFraction, which matches "integer / integer" and has higher
precedence than implicit multiplication
2017-10-21 15:58:20 -06:00
ericman314
1c7081abd8 Increased precedence of implicit multiplication
Moved the implicit part of parseMultiplyDivide into its own function
which has higher precedence.
2017-10-21 15:11:45 -06:00
jos
b1a2de0270 Update history, fixed a broken unit test for Help 2017-09-30 14:30:29 +02:00
mm151
0a3c48c077 Fix several issues with internal help 2017-09-27 08:59:52 +02:00
Max Bruckner
b2857392bd OperatorNode: Fix implicit multiplication
Fixes implicit multiplication when parenthesis is 'auto' and operands
are ConstantNodes.

This is handled by detecting that case and printing parentheses for
ParenthesisNodes even though they normally wouldn't with parenthesis
set to 'auto'.
2017-08-13 20:57:41 +02:00
Max Bruckner
1f4909c625 OperatorNode: switch-case in calculate..Parentheses 2017-08-13 19:26:37 +02:00
jos
967e65cceb Refactored usage of properties .isNode, .isSymbolNode, etc. into using functions like type.isNode(x) for security 2017-08-12 14:38:03 +02:00
jos
949261f92b Refactored usage of properties .isRange, .isIndex, .isResultSet, and .isHelp for their (safe) function equivalents 2017-08-12 13:31:09 +02:00
jos
fa01e993af Refactored x && x.isMatrix === true into type.isMatrix(x), same with isDenseMatrix and isSparseMatrix 2017-08-12 13:24:39 +02:00
jos
e10dd5bce5 Refactored x && x.isBigNumber === true into type.isBigNumber(x) 2017-08-12 11:54:53 +02:00
jos
26e70a4acd Refactored x.isComplex === true into type.isComplex(x) 2017-08-12 11:32:40 +02:00
jos
a18f2068f3 Fixed toString of a parsed expression tree containing an immediately invoked function assignment not being wrapped in parenthesis 2017-08-12 11:03:19 +02:00
jos
9666c16378 Fixed #846: Issues in the functions map, forEach, and filter when used in the expression parser 2017-07-29 14:05:27 +02:00
jos
469e6bf3cf Fixed #895: added support for the dollar character $ in symbol names 2017-07-10 20:29:30 +02:00