"

2013 FRC Java API

"

com.sun.squawk.pragma
Class AllowInlinedPragma

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by com.sun.squawk.pragma.PragmaException
                  extended by com.sun.squawk.pragma.AllowInlinedPragma
Direct Known Subclasses:
ForceInlinedPragma

public class AllowInlinedPragma
extends PragmaException

Allow a method declared to throw this exception to be inlined. This is like ForceInlinedPragma, except that if an AllowInlinedPragma method is too large to inline, it won't be. This is good for debug code that is conditionally compiled. For a virtual method, this allows inlining EVEN IF THE RECEIVER MIGHT BE NULL. For example: void foo() { return; } void bar(Foo aFoo) { aFoo.foo(); } Normal inlining rules prohibit inlining foo() into bar, because it eliminates the implicit null check that invokevirtual does. But if foo() is declared to throw AllowInlinedPragma, then it may be inlined Method size limits may still prevent the method from being inlined. For a static method, this allows inlining EVEN IF THE CLASS HAS A STATIC INITIALIZER. Inlining will skip calling the static initializer. Any getstatic, putstatic, or invokestatic bytecodes within the inlined method will still cause the static initializer to be called if needed.

See Also:
NativePragma, ForceInlinedPragma

Field Summary
 
Fields inherited from class com.sun.squawk.pragma.PragmaException
ALLOW_INLINED, FORCE_INLINED, FORCE_INLINED_A, HOSTED, INTERPRETER_INVOKED, NATIVE, NOT_INLINED, REPLACEMENT_CONSTRUCTOR
 
Method Summary
 
Methods inherited from class com.sun.squawk.pragma.PragmaException
isAllowInlined, isForceInlined, isHosted, isInterpreterInvoked, isNative, isNotInlined, isReplacementConstructor, toModifier
 
Methods inherited from class java.lang.Throwable
getMessage, printStackTrace, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 


"

2013 FRC Java API

"

"
For updated information see the Java FRC site
"