package sharpen.xobotos.api.interop;
import sharpen.core.csharp.ast.CSAttribute;
import sharpen.core.csharp.ast.CSExpression;
import sharpen.core.csharp.ast.CSStatement;
import sharpen.core.csharp.ast.CSTypeReferenceExpression;
import sharpen.core.csharp.ast.CSVariableDeclaration;
public interface IManagedMarshalContext {
void addDeclaration(CSVariableDeclaration decl, CSStatement cleanup);
void addPreStatement(CSStatement statement);
void addPostStatement(CSStatement statement);
String getVariableName(String suffix);
ManagedVariable addParameter(String name, CSTypeReferenceExpression type, CSExpression arg,
CSAttribute... attrs);
}