Click here to Skip to main content
12,451,703 members (59,910 online)
Click here to Skip to main content

Tagged as

Stats

272K views
9.2K downloads
403 bookmarked
Posted

A Calculation Engine for .NET

, 1 Sep 2013 CPOL
A calculation engine that is small, fast, and extensible.
Imports System.Collections
Imports System.Reflection
Imports System.Globalization

Public Class Form1

    Public Sub New()

        ' This call is required by the designer.
        InitializeComponent()

        ' create calc engine
        Dim ce As New CalcEngine.CalcEngine()

        ' register custom function
        ce.RegisterFunction("Add", 2, AddressOf Add)

        ' test
        Console.WriteLine(ce.Evaluate("Add(420, 123+123)"))

    End Sub

    Private Shared Function Add(ByVal p As List(Of CalcEngine.Expression)) As Object
        Return CDbl(p(0)) + CDbl(p(1))
    End Function

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles _btnEval.Click
        Dim ce As New CalcEngine.CalcEngine()
        _lblResult.Text = ce.Evaluate(_txtExpression.Text).ToString()
    End Sub
End Class





By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Bernardo Castilho
Chief Technology Officer ComponentOne
United States United States
No Biography provided

You may also be interested in...

Pro
Pro
| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.160826.1 | Last Updated 1 Sep 2013
Article Copyright 2011 by Bernardo Castilho
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid