Files
amath/doc/man/man3/NumericValueNode.3
T
2017-01-24 22:03:15 +01:00

242 lines
5.1 KiB
Plaintext

.TH "NumericValueNode" 3 "Tue Jan 24 2017" "Version 1.6.2" "amath" \" -*- nroff -*-
.ad l
.nh
.SH NAME
NumericValueNode \- Use of a numeric value in a syntax tree\&.
.SH SYNOPSIS
.br
.PP
.PP
\fC#include <values\&.h>\fP
.PP
Inherits \fBExpressionNode\fP\&.
.PP
Inherited by \fBComplexiNode\fP, \fBEulersNumberNode\fP, and \fBPiNode\fP\&.
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBNumericValueNode\fP ()"
.br
.ti -1c
.RI "\fBNumericValueNode\fP (\fBNumber\fP *value)"
.br
.ti -1c
.RI "virtual \fBReductionType\fP \fBGetReductionType\fP ()"
.br
.ti -1c
.RI "int \fBGetPrecedence\fP ()"
.br
.ti -1c
.RI "char * \fBGetText\fP ()"
.br
.ti -1c
.RI "\fBSyntaxNode\fP * \fBGetNext\fP ()"
.br
.ti -1c
.RI "\fBNumber\fP * \fBEvaluate\fP ()"
.br
.ti -1c
.RI "void \fBAttach\fP (\fBSyntaxNode\fP *node)"
.br
.ti -1c
.RI "void \fBDetach\fP (\fBSyntaxNode\fP *node)"
.br
.ti -1c
.RI "void \fBReplace\fP (\fBSyntaxNode\fP *n, \fBSyntaxNode\fP *x)"
.br
.ti -1c
.RI "void \fBReplaceWith\fP (\fBNumber\fP *value)"
.br
.in -1c
.SS "Protected Member Functions"
.in +1c
.ti -1c
.RI "char * \fBGetNodeText\fP ()"
.br
.in -1c
.SS "Additional Inherited Members"
.SH "Detailed Description"
.PP
Use of a numeric value in a syntax tree\&.
.PP
Definition at line 142 of file values\&.h\&.
.SH "Constructor & Destructor Documentation"
.PP
.SS "NumericValueNode::NumericValueNode ()"
.PP
Definition at line 341 of file values\&.cpp\&.
.PP
References ExpressionNode::ExpressionNode(), and RealNumber::RealNumber()\&.
.PP
Referenced by Parser::ParseAtomic(), and Parser::ParseIdent()\&.
.PP
.nf
341 :
342 ExpressionNode(new RealNumber()) { }
.fi
.SS "NumericValueNode::NumericValueNode (\fBNumber\fP * value)"
.PP
Definition at line 344 of file values\&.cpp\&.
.PP
References ExpressionNode::ExpressionNode()\&.
.PP
Referenced by ComplexiNode::ComplexiNode(), EulersNumberNode::EulersNumberNode(), Parser::ParseNumber(), PiNode::PiNode(), and Optimizer::ReduceValueNodes()\&.
.PP
.nf
344 :
345 ExpressionNode(value) { }
.fi
.SH "Member Function Documentation"
.PP
.SS "void NumericValueNode::Attach (\fBSyntaxNode\fP * node)\fC [virtual]\fP"
.PP
Implements \fBSyntaxNode\fP\&.
.PP
Definition at line 381 of file values\&.cpp\&.
.PP
.nf
382 { }
.fi
.SS "void NumericValueNode::Detach (\fBSyntaxNode\fP * node)\fC [virtual]\fP"
.PP
Implements \fBSyntaxNode\fP\&.
.PP
Definition at line 384 of file values\&.cpp\&.
.PP
.nf
385 { }
.fi
.SS "\fBNumber\fP * NumericValueNode::Evaluate ()\fC [virtual]\fP"
.PP
Implements \fBExpressionNode\fP\&.
.PP
Definition at line 359 of file values\&.cpp\&.
.PP
References ExpressionNode::result\&.
.PP
Referenced by Optimizer::ReduceUnaryNodes(), and Optimizer::ReduceValueNodes()\&.
.PP
.nf
360 {
361 return result;
362 }
.fi
.SS "\fBSyntaxNode\fP * NumericValueNode::GetNext ()\fC [virtual]\fP"
.PP
Implements \fBSyntaxNode\fP\&.
.PP
Definition at line 376 of file values\&.cpp\&.
.PP
.nf
377 {
378 return NOMEM;
379 }
.fi
.SS "char * NumericValueNode::GetNodeText ()\fC [protected]\fP, \fC [virtual]\fP"
.PP
Implements \fBExpressionNode\fP\&.
.PP
Reimplemented in \fBComplexiNode\fP, \fBPiNode\fP, and \fBEulersNumberNode\fP\&.
.PP
Definition at line 369 of file values\&.cpp\&.
.PP
References CharBuffer::ClearAndCopy(), CharBuffer::GetString(), NumeralSystem::GetText(), Program::Input, SyntaxNode::output, and ExpressionNode::result\&.
.PP
Referenced by GetText()\&.
.PP
.nf
370 {
371 const char *val = Program->Input->GetText(result);
372 output->ClearAndCopy(val);
373 return output->GetString();
374 }
.fi
.SS "int NumericValueNode::GetPrecedence ()\fC [virtual]\fP"
.PP
Implements \fBExpressionNode\fP\&.
.PP
Definition at line 352 of file values\&.cpp\&.
.PP
References Number::GetDefaultPrecedence(), Number::GetPrecedence(), SyntaxNode::leftBottom, and ExpressionNode::result\&.
.PP
.nf
353 {
354 return !leftBottom ?
355 result->GetPrecedence() :
356 result->GetDefaultPrecedence();
357 }
.fi
.SS "\fBReductionType\fP NumericValueNode::GetReductionType ()\fC [virtual]\fP"
.PP
Reimplemented from \fBSyntaxNode\fP\&.
.PP
Reimplemented in \fBComplexiNode\fP, \fBPiNode\fP, and \fBEulersNumberNode\fP\&.
.PP
Definition at line 347 of file values\&.cpp\&.
.PP
References valuereduc\&.
.PP
Referenced by Optimizer::ReduceValueNodes()\&.
.PP
.nf
348 {
349 return valuereduc;
350 }
.fi
.SS "char * NumericValueNode::GetText ()\fC [virtual]\fP"
.PP
Implements \fBExpressionNode\fP\&.
.PP
Definition at line 364 of file values\&.cpp\&.
.PP
References GetNodeText()\&.
.PP
.nf
365 {
366 return GetNodeText();
367 }
.fi
.SS "void NumericValueNode::Replace (\fBSyntaxNode\fP * n, \fBSyntaxNode\fP * x)\fC [virtual]\fP"
.PP
Implements \fBSyntaxNode\fP\&.
.PP
Definition at line 387 of file values\&.cpp\&.
.PP
.nf
388 { }
.fi
.SS "void NumericValueNode::ReplaceWith (\fBNumber\fP * value)"
.PP
Definition at line 390 of file values\&.cpp\&.
.PP
References ExpressionNode::result\&.
.PP
Referenced by Optimizer::ReduceUnaryNodes()\&.
.PP
.nf
391 {
392 delete result;
393 result = value;
394 }
.fi
.SH "Author"
.PP
Generated automatically by Doxygen for amath from the source code\&.