Package org.eclipse.mat.parser.internal.oql.compiler

## Class CompilerImpl

- java.lang.Object
- - org.eclipse.mat.parser.internal.oql.compiler.CompilerImpl

All Implemented Interfaces:
  `ICompiler`

    public class CompilerImpl
    extends java.lang.Object
    implements ICompiler

### Constructor Summary

Constructors
`CompilerImpl()`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.Object` `and​(java.lang.Object[] arguments)`
`java.lang.Object` `array​(java.lang.Object index)`
`java.lang.Object` `array​(java.lang.Object index, java.lang.Object index2)`
`java.lang.Object` `divide​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `equal​(java.lang.Object left, java.lang.Object right)`
`org.eclipse.mat.parser.internal.oql.compiler.Function` `function​(java.lang.String name, java.lang.Object subject)`
`java.lang.Object` `greaterThan​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `greaterThanOrEqual​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `in​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `instanceOf​(java.lang.Object left, java.lang.String className)`
`java.lang.Object` `lessThan​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `lessThanOrEqual​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `like​(java.lang.Object ex, java.lang.String regex)`
`java.lang.Object` `literal​(java.lang.Object object)`
`java.lang.Object` `method​(java.lang.String name, java.util.List<Expression> parameters, boolean isFirstInPath)`
`java.lang.Object` `minus​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `multiply​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `notEqual​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `notIn​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `notLike​(java.lang.Object ex, java.lang.String regex)`
`java.lang.Object` `nullLiteral()`
`java.lang.Object` `or​(java.lang.Object[] arguments)`
`java.lang.Object` `path​(java.util.List<java.lang.Object> attributes)`
`java.lang.Object` `plus​(java.lang.Object left, java.lang.Object right)`
`java.lang.Object` `subQuery​(Query q)`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### CompilerImpl

    public CompilerImpl()

### Method Detail

#### and

    public java.lang.Object and​(java.lang.Object[] arguments)

Specified by:
  `and` in interface `ICompiler`

#### or

    public java.lang.Object or​(java.lang.Object[] arguments)

Specified by:
  `or` in interface `ICompiler`

#### equal

    public java.lang.Object equal​(java.lang.Object left,
                                  java.lang.Object right)

Specified by:
  `equal` in interface `ICompiler`

#### notEqual

    public java.lang.Object notEqual​(java.lang.Object left,
                                     java.lang.Object right)

Specified by:
  `notEqual` in interface `ICompiler`

#### greaterThan

    public java.lang.Object greaterThan​(java.lang.Object left,
                                        java.lang.Object right)

Specified by:
  `greaterThan` in interface `ICompiler`

#### greaterThanOrEqual

    public java.lang.Object greaterThanOrEqual​(java.lang.Object left,
                                               java.lang.Object right)

Specified by:
  `greaterThanOrEqual` in interface `ICompiler`

#### lessThan

    public java.lang.Object lessThan​(java.lang.Object left,
                                     java.lang.Object right)

Specified by:
  `lessThan` in interface `ICompiler`

#### lessThanOrEqual

    public java.lang.Object lessThanOrEqual​(java.lang.Object left,
                                            java.lang.Object right)

Specified by:
  `lessThanOrEqual` in interface `ICompiler`

#### like

    public java.lang.Object like​(java.lang.Object ex,
                                 java.lang.String regex)

Specified by:
  `like` in interface `ICompiler`

#### notLike

    public java.lang.Object notLike​(java.lang.Object ex,
                                    java.lang.String regex)

Specified by:
  `notLike` in interface `ICompiler`

#### in

    public java.lang.Object in​(java.lang.Object left,
                               java.lang.Object right)

Specified by:
  `in` in interface `ICompiler`

#### notIn

    public java.lang.Object notIn​(java.lang.Object left,
                                  java.lang.Object right)

Specified by:
  `notIn` in interface `ICompiler`

#### instanceOf

    public java.lang.Object instanceOf​(java.lang.Object left,
                                       java.lang.String className)

Specified by:
  `instanceOf` in interface `ICompiler`

#### literal

    public java.lang.Object literal​(java.lang.Object object)

Specified by:
  `literal` in interface `ICompiler`

#### nullLiteral

    public java.lang.Object nullLiteral()

Specified by:
  `nullLiteral` in interface `ICompiler`

#### path

    public java.lang.Object path​(java.util.List<java.lang.Object> attributes)

Specified by:
  `path` in interface `ICompiler`

#### method

    public java.lang.Object method​(java.lang.String name,
                                   java.util.List<Expression> parameters,
                                   boolean isFirstInPath)

Specified by:
  `method` in interface `ICompiler`

#### function

    public org.eclipse.mat.parser.internal.oql.compiler.Function function​(java.lang.String name,
                                                                          java.lang.Object subject)

#### subQuery

    public java.lang.Object subQuery​(Query q)

Specified by:
  `subQuery` in interface `ICompiler`

#### divide

    public java.lang.Object divide​(java.lang.Object left,
                                   java.lang.Object right)

Specified by:
  `divide` in interface `ICompiler`

#### minus

    public java.lang.Object minus​(java.lang.Object left,
                                  java.lang.Object right)

Specified by:
  `minus` in interface `ICompiler`

#### multiply

    public java.lang.Object multiply​(java.lang.Object left,
                                     java.lang.Object right)

Specified by:
  `multiply` in interface `ICompiler`

#### plus

    public java.lang.Object plus​(java.lang.Object left,
                                 java.lang.Object right)

Specified by:
  `plus` in interface `ICompiler`

#### array

    public java.lang.Object array​(java.lang.Object index)

Specified by:
  `array` in interface `ICompiler`

#### array

    public java.lang.Object array​(java.lang.Object index,
                                  java.lang.Object index2)

Specified by:
  `array` in interface `ICompiler`