OSDN Git Service

move parenthesis into create_complex_number
[mint/mint-lib.git] / lib / mint / builder.rb
1 # -*- coding: utf-8 -*-
2
3 require 'builder/expression_tree'
4 require 'builder/mint_expression_parser'
5
6 module Mint
7
8   class InvalidExpressionError < StandardError; end
9
10   module Builder
11
12     class << self
13       def build(expression)
14         if expression.nil? || expression.empty?
15           return NullExpression.new
16         end
17         parser.parse(expression)
18       rescue
19         raise InvalidExpressionError, expression
20       end
21
22       def parser
23         @@parser ||= MintExpressionParser.new
24       end
25     end
26   end
27 end
28