Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Sources/AngouriMath/Core/Antlr/AngouriMath.g
Original file line number Diff line number Diff line change
Expand Up @@ -324,28 +324,34 @@ atom returns[Entity value]
| 'asinh(' args = function_arguments ')' { Assert("arcsin", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsinh($args.list[0]); }
| 'arsinh(' args = function_arguments ')' { Assert("arcsin", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsinh($args.list[0]); }
| 'arsh(' args = function_arguments ')' { Assert("arcsin", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsinh($args.list[0]); }
| 'arcsinh(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arcsinh: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic sine is arsinh, asinh or arsh"); }

| 'acosh(' args = function_arguments ')' { Assert("arccos", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosh($args.list[0]); }
| 'arcosh(' args = function_arguments ')' { Assert("arccos", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosh($args.list[0]); }
| 'arch(' args = function_arguments ')' { Assert("arccos", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosh($args.list[0]); }
| 'arccosh(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arccosh: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic cosine is arcosh, acosh or arch"); }

| 'atanh(' args = function_arguments ')' { Assert("arctan", 1, $args.list.Count); $value = MathS.Hyperbolic.Artanh($args.list[0]); }
| 'artanh(' args = function_arguments ')' { Assert("arctan", 1, $args.list.Count); $value = MathS.Hyperbolic.Artanh($args.list[0]); }
| 'arth(' args = function_arguments ')' { Assert("arctan", 1, $args.list.Count); $value = MathS.Hyperbolic.Artanh($args.list[0]); }
| 'arctanh(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arctanh: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic tangent is artanh, atanh or arth"); }

| 'acoth(' args = function_arguments ')' { Assert("arccotan", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcotanh($args.list[0]); }
| 'arcoth(' args = function_arguments ')' { Assert("arccotan", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcotanh($args.list[0]); }
| 'acotanh(' args = function_arguments ')' { Assert("arccotan", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcotanh($args.list[0]); }
| 'arcotanh(' args = function_arguments ')' { Assert("arccotan", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcotanh($args.list[0]); }
| 'arcth(' args = function_arguments ')' { Assert("arccotan", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcotanh($args.list[0]); }
| 'arccotanh(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arccotanh: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic cotangent is arcotanh, acotanh, arcoth, acoth or arcth"); }

| 'asech(' args = function_arguments ')' { Assert("arcsec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsech($args.list[0]); }
| 'arsech(' args = function_arguments ')' { Assert("arcsec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsech($args.list[0]); }
| 'arsch(' args = function_arguments ')' { Assert("arcsec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arsech($args.list[0]); }
| 'arcsech(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arcsech: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic secant is arsech, asech or arsch"); }

| 'acosech(' args = function_arguments ')' { Assert("arccosec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosech($args.list[0]); }
| 'arcosech(' args = function_arguments ')' { Assert("arccosec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosech($args.list[0]); }
| 'arcsch(' args = function_arguments ')' { Assert("arccosec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosech($args.list[0]); }
| 'arccosech(' args = function_arguments ')' { throw new UnrecognizedFunctionParseException("there is no function arccosech: the inverse hyperbolic functions are area functions, not arc functions, so the inverse hyperbolic cosecant is arcosech, acosech, arcsch or acsch"); }
| 'acsch(' args = function_arguments ')' { Assert("arccosec", 1, $args.list.Count); $value = MathS.Hyperbolic.Arcosech($args.list[0]); }
/* End */

Expand Down
14 changes: 13 additions & 1 deletion Sources/AngouriMath/Core/Antlr/AngouriMath.interp

Large diffs are not rendered by default.

92 changes: 52 additions & 40 deletions Sources/AngouriMath/Core/Antlr/AngouriMath.tokens
Original file line number Diff line number Diff line change
Expand Up @@ -119,13 +119,19 @@ T__117=118
T__118=119
T__119=120
T__120=121
NEWLINE=122
NUMBER=123
SPECIALSET=124
BOOLEAN=125
VARIABLE=126
COMMENT=127
WS=128
T__121=122
T__122=123
T__123=124
T__124=125
T__125=126
T__126=127
NEWLINE=128
NUMBER=129
SPECIALSET=130
BOOLEAN=131
VARIABLE=132
COMMENT=133
WS=134
'!'=1
'^'=2
'-'=3
Expand Down Expand Up @@ -214,36 +220,42 @@ WS=128
'asinh('=86
'arsinh('=87
'arsh('=88
'acosh('=89
'arcosh('=90
'arch('=91
'atanh('=92
'artanh('=93
'arth('=94
'acoth('=95
'arcoth('=96
'acotanh('=97
'arcotanh('=98
'arcth('=99
'asech('=100
'arsech('=101
'arsch('=102
'acosech('=103
'arcosech('=104
'arcsch('=105
'acsch('=106
'gamma('=107
'derivative('=108
'integral('=109
'limit('=110
'limitleft('=111
'limitright('=112
'signum('=113
'sgn('=114
'sign('=115
'abs('=116
'phi('=117
'domain('=118
'piecewise('=119
'apply('=120
'lambda('=121
'arcsinh('=89
'acosh('=90
'arcosh('=91
'arch('=92
'arccosh('=93
'atanh('=94
'artanh('=95
'arth('=96
'arctanh('=97
'acoth('=98
'arcoth('=99
'acotanh('=100
'arcotanh('=101
'arcth('=102
'arccotanh('=103
'asech('=104
'arsech('=105
'arsch('=106
'arcsech('=107
'acosech('=108
'arcosech('=109
'arcsch('=110
'arccosech('=111
'acsch('=112
'gamma('=113
'derivative('=114
'integral('=115
'limit('=116
'limitleft('=117
'limitright('=118
'signum('=119
'sgn('=120
'sign('=121
'abs('=122
'phi('=123
'domain('=124
'piecewise('=125
'apply('=126
'lambda('=127
Loading
Loading