/**********************************************************************
// @@@ START COPYRIGHT @@@
//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.
//
// @@@ END COPYRIGHT @@@
**********************************************************************/
#include "GenBitMuxFunction.cpp"
#include "GenExpGenerator.cpp"
//#include "GenExplain.cpp"
#include "GenFlowControlFunction.cpp"
#include "GenItemExpr.cpp"
#include "GenItemFunc.cpp"
#include "GenItemSampling.cpp"
#include "GenKey.cpp"
#include "GenMapTable.cpp"
#include "GenMdamPred.cpp"
#include "GenPartFunc.cpp"
#include "GenPreCode.cpp"
#include "GenProbeCache.cpp"
#include "GenRel3GL.cpp"
#include "GenRelDCL.cpp"
#include "GenRelEnforcer.cpp"
#include "GenRelExeUtil.cpp"
#include "GenRelExpr.cpp"
#include "GenRelGrby.cpp"
#include "GenRelJoin.cpp"
#include "GenRelMisc.cpp"
#include "GenRelPackedRows.cpp"
#include "GenRelSample.cpp"
#include "GenRelScan.cpp"
#include "GenRelSequence.cpp"
#include "GenRelSet.cpp"
#include "GenRelUpdate.cpp"
#include "GenResources.cpp"
#include "GenRfork.cpp"
#include "GenSequenceFunction.cpp"
#include "GenShape.cpp"
#include "GenStoredProc.cpp"
#include "Generator.cpp"
#include "GenUdr.cpp"
#include "GenFastTransport.cpp"
#include "LmExpr.cpp"
#include "LmGenUtil.cpp"   // From langman directory
