public virtual TResult Visit(BaseExpression expression)
 {
     return(expression switch {
         Phi a => Visit(a),
         Increment a => Visit(a),
         Decrement a => Visit(a),
         ErrorExpression a => Visit(a),
         Bracketed a => Visit(a),
         Abs a => Visit(a),
         Sqrt a => Visit(a),
         Sine a => Visit(a),
         Cosine a => Visit(a),
         Tangent a => Visit(a),
         ArcSine a => Visit(a),
         ArcCos a => Visit(a),
         ArcTan a => Visit(a),
         PostIncrement a => Visit(a),
         PreIncrement a => Visit(a),
         PostDecrement a => Visit(a),
         PreDecrement a => Visit(a),
         Add a => Visit(a),
         Subtract a => Visit(a),
         Multiply a => Visit(a),
         Divide a => Visit(a),
         Modulo a => Visit(a),
         Negate a => Visit(a),
         Exponent a => Visit(a),
         Or a => Visit(a),
         And a => Visit(a),
         Not a => Visit(a),
         Factorial a => Visit(a),
         Variable a => Visit(a),
         ConstantNumber a => Visit(a),
         ConstantString a => Visit(a),
         EqualTo a => Visit(a),
         NotEqualTo a => Visit(a),
         GreaterThan a => Visit(a),
         GreaterThanEqualTo a => Visit(a),
         LessThan a => Visit(a),
         LessThanEqualTo a => Visit(a),
         _ => VisitUnknown(expression)
     });
 protected override bool Visit(ArcSine app) => StaticFalse(app);
 protected override Type Visit(ArcSine app) => UnaryNumeric(app, app.Parameter, true, false);
 protected override BaseExpression Visit(ArcSine app)
 {
     using (AppendLine("ASIN"))
         return(base.Visit(app));
 }
 [NotNull] protected abstract TResult Visit([NotNull] ArcSine app);
Beispiel #6
0
 [NotNull] protected virtual BaseExpression Visit([NotNull] ArcSine app)
 {
     return(new ArcSine(Visit(app.Parameter)));
 }
Beispiel #7
0
 protected override IDataFlowGraphExpressionNode Visit(ArcSine app)
 {
     return(VisitUnary(new UnaryOp(Guid.NewGuid(), "asin", Visit(app.Parameter), a => new ArcSine(a))));
 }
 protected override bool Visit(ArcSine app) => Visit(app.Parameter);
 protected override IEnumerable <BaseStatement> Visit(ArcSine app) => Unary(app, a => new ArcSine(a));
 protected override bool Visit(ArcSine app) => Visit(app.Parameter) && _level >= YololChip.Professional;