/******************************************************************************* * Copyright © 2011, 2013 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation * *******************************************************************************/ package eglx.lang; import org.eclipse.edt.javart.ByteStorage; /** * Abstract super class for all types that have to be able to represent their values * as a byte array. This is necessary for types containing structured * fields that are part of structured records. * * @author twilson * */ public interface AnyStruct extends AnyValue { public abstract Object defaultValue(); public byte[] getBytes(); public ByteStorage buffer(); public int sizeInBytes(); @Override public void ezeSetEmpty(); public <T extends AnyStruct> T substring(int start, int end) throws AnyException; }