001 /* Copyright 2000, 2001, Compaq Computer Corporation */
002
003 package escjava.translate;
004
005 class InlineSettings {
006 boolean dontCheckPreconditions;
007 boolean dontCheckInlinedBody;
008 boolean getSpecForInline; // as opposed to getSpecForBody
009
010 int nextInlineCheckDepth = 0;
011 int nextInlineDepthPastCheck = 0;
012
013 InlineSettings(boolean dontCheckPreconditions,
014 boolean dontCheckInlinedBody,
015 boolean getSpecForInline) {
016 this.dontCheckPreconditions = dontCheckPreconditions;
017 this.dontCheckInlinedBody = dontCheckInlinedBody;
018 this.getSpecForInline = getSpecForInline;
019 }
020
021 InlineSettings(boolean dontCheckPreconditions,
022 boolean dontCheckInlinedBody,
023 boolean getSpecForInline,
024 int checkDepth, int depthPastCheck) {
025 this(dontCheckPreconditions,
026 dontCheckInlinedBody,
027 getSpecForInline);
028 this.nextInlineCheckDepth = checkDepth;
029 this.nextInlineDepthPastCheck = depthPastCheck;
030 }
031
032 InlineSettings(InlineSettings is,
033 int checkDepth, int depthPastCheck) {
034 this(is.dontCheckPreconditions,
035 is.dontCheckInlinedBody,
036 is.getSpecForInline);
037 this.nextInlineCheckDepth = checkDepth;
038 this.nextInlineDepthPastCheck = depthPastCheck;
039 }
040 }