class RecordImpl implements Record {

    @Override
    public String getDeclaration() {
        final StringBuilder builder = new StringBuilder();

        builder.append("record ").append(getName()).append("\n");
        builder.append("(\n");
        ((StructureImpl) structure).addDeclaration(builder, 1);
        builder.append(")");
        return builder.toString();
    }

    public  RecordImpl(final String name, final Structure structure, final Record parent);
      RecordImpl(final String name, final Structure structure, final Record parent,
            final RecordListImplFactory fixedListFactory, final DynamicRecordListImplFactory varListFactory,
            final RecordImplFactory recordFactory);

}