func (tree *ExpressionTree) MarshalJSON() ([]byte, error) {
	if tree == nil || tree.Expression == nil {
		return nil, nil
	}

	exprList, err := marshalAssumesExpressionTree(tree)
	if err != nil {
		return nil, errors.Trace(err)
	}
	return json.Marshal(exprList)
}
// MarshalJSON implements the json.Marshaler interface.
MarshalJSON implements the json.Marshaler interface.
// MarshalJSON implements the json . Marshaler interface .
func (tree *ExpressionTree) MarshalJSON() ([]byte, error) {
	if tree == nil || tree.Expression == nil {
		return nil, nil
	}
	exprList, err := marshalAssumesExpressionTree(tree)
	if err != nil {
		return nil, errors.Trace(err)
	}
	return json.Marshal(exprList)
}
func ( tree * ExpressionTree ) MarshalJSON ( ) ( [ ] byte , error ) { if tree == nil || tree . Expression == nil { return nil , nil } exprList , err := marshalAssumesExpressionTree ( tree ) if err != nil { return nil , errors . Trace ( err ) } return json . Marshal ( exprList ) }
MarshalJSON implements the json.Marshaler interface.
MarshalJSON implements the json . Marshaler interface .