/*
 * This file is generated by jOOQ.
 */
package org.jooq.meta.derby.sys;


import java.util.Arrays;
import java.util.List;

import org.jooq.Table;
import org.jooq.impl.DSL;
import org.jooq.impl.SchemaImpl;
import org.jooq.meta.derby.sys.tables.Sysaliases;
import org.jooq.meta.derby.sys.tables.Syschecks;
import org.jooq.meta.derby.sys.tables.Syscolumns;
import org.jooq.meta.derby.sys.tables.Sysconglomerates;
import org.jooq.meta.derby.sys.tables.Sysconstraints;
import org.jooq.meta.derby.sys.tables.Syskeys;
import org.jooq.meta.derby.sys.tables.Sysschemas;
import org.jooq.meta.derby.sys.tables.Syssequences;
import org.jooq.meta.derby.sys.tables.Systables;
import org.jooq.meta.derby.sys.tables.Systriggers;
import org.jooq.meta.derby.sys.tables.Sysviews;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes", "this-escape" })
public class Sys extends SchemaImpl {

    private static final long serialVersionUID = 1L;

    /**
     * The reference instance of <code>SYS</code>
     */
    public static final Sys SYS = new Sys();

    /**
     * The table <code>SYS.SYSALIASES</code>.
     */
    public final Sysaliases SYSALIASES = Sysaliases.SYSALIASES;

    /**
     * The table <code>SYS.SYSCHECKS</code>.
     */
    public final Syschecks SYSCHECKS = Syschecks.SYSCHECKS;

    /**
     * The table <code>SYS.SYSCOLUMNS</code>.
     */
    public final Syscolumns SYSCOLUMNS = Syscolumns.SYSCOLUMNS;

    /**
     * The table <code>SYS.SYSCONGLOMERATES</code>.
     */
    public final Sysconglomerates SYSCONGLOMERATES = Sysconglomerates.SYSCONGLOMERATES;

    /**
     * The table <code>SYS.SYSCONSTRAINTS</code>.
     */
    public final Sysconstraints SYSCONSTRAINTS = Sysconstraints.SYSCONSTRAINTS;

    /**
     * The table <code>SYS.SYSKEYS</code>.
     */
    public final Syskeys SYSKEYS = Syskeys.SYSKEYS;

    /**
     * The table <code>SYS.SYSSCHEMAS</code>.
     */
    public final Sysschemas SYSSCHEMAS = Sysschemas.SYSSCHEMAS;

    /**
     * The table <code>SYS.SYSSEQUENCES</code>.
     */
    public final Syssequences SYSSEQUENCES = Syssequences.SYSSEQUENCES;

    /**
     * The table <code>SYS.SYSTABLES</code>.
     */
    public final Systables SYSTABLES = Systables.SYSTABLES;

    /**
     * The table <code>SYS.SYSTRIGGERS</code>.
     */
    public final Systriggers SYSTRIGGERS = Systriggers.SYSTRIGGERS;

    /**
     * The table <code>SYS.SYSVIEWS</code>.
     */
    public final Sysviews SYSVIEWS = Sysviews.SYSVIEWS;

    /**
     * No further instances allowed
     */
    private Sys() {
        super(DSL.name("SYS"), null, DSL.comment(""));
    }

    @Override
    public final List<Table<?>> getTables() {
        return Arrays.asList(
            Sysaliases.SYSALIASES,
            Syschecks.SYSCHECKS,
            Syscolumns.SYSCOLUMNS,
            Sysconglomerates.SYSCONGLOMERATES,
            Sysconstraints.SYSCONSTRAINTS,
            Syskeys.SYSKEYS,
            Sysschemas.SYSSCHEMAS,
            Syssequences.SYSSEQUENCES,
            Systables.SYSTABLES,
            Systriggers.SYSTRIGGERS,
            Sysviews.SYSVIEWS
        );
    }
}
