Groovy Documentation

## org.codehaus.groovy.classgen.asm.sc
[Java] Class StaticTypesCallSiteWriter

    java.lang.Object
      org.codehaus.groovy.classgen.asm.CallSiteWriter
          org.codehaus.groovy.classgen.asm.sc.StaticTypesCallSiteWriter

All Implemented Interfaces:
  org.objectweb.asm.Opcodes

    public class StaticTypesCallSiteWriter
    extends CallSiteWriter

A call site writer which replaces call site caching with static calls. This means that the generated code looks more like Java code than dynamic Groovy code. Best effort is made to use JVM instructions instead of calls to helper methods.

Authors:
  Cedric Champeau

Field Summary

Fields inherited from class CallSiteWriter
CONSTRUCTOR

Constructor Summary
`StaticTypesCallSiteWriter(StaticTypesWriterController controller)`

Method Summary
`void` | `makeCallSite(Expression receiver, java.lang.String message, Expression arguments, boolean safe, boolean implicitThis, boolean callCurrent, boolean callStatic)`
`void` | `makeCallSiteArrayInitializer()`
`void` | `makeGetPropertySite(Expression receiver, java.lang.String methodName, boolean safe, boolean implicitThis)`
`void` | `makeGroovyObjectGetPropertySite(Expression receiver, java.lang.String methodName, boolean safe, boolean implicitThis)`
`void` | `makeSingleArgumentCall(Expression receiver, java.lang.String message, Expression arguments)`
`void` | `makeSiteEntry()`
`void` | `prepareCallSite(java.lang.String message)`

Methods inherited from class CallSiteWriter
generateCallSiteArray, getCallSites, makeCallSite, makeCallSiteArrayInitializer, makeGetPropertySite, makeGroovyObjectGetPropertySite, makeSingleArgumentCall, makeSiteEntry, prepareCallSite, prepareSiteAndReceiver, visitBoxedArgument

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Constructor Detail

### StaticTypesCallSiteWriter

    public StaticTypesCallSiteWriter(StaticTypesWriterController controller)

Method Detail

### makeCallSite

    @Override
    public void makeCallSite(Expression receiver, java.lang.String message, Expression arguments, boolean safe, boolean implicitThis, boolean callCurrent, boolean callStatic)

### makeCallSiteArrayInitializer

    // and that one references the other, the getters for properties have not been
    public void makeCallSiteArrayInitializer()

### makeGetPropertySite

    @Override
    public void makeGetPropertySite(Expression receiver, java.lang.String methodName, boolean safe, boolean implicitThis)

### makeGroovyObjectGetPropertySite

    }
    public void makeGroovyObjectGetPropertySite(Expression receiver, java.lang.String methodName, boolean safe, boolean implicitThis)

### makeSingleArgumentCall

    ClassNode current = rType;
    public void makeSingleArgumentCall(Expression receiver, java.lang.String message, Expression arguments)

### makeSiteEntry

    writeStringPlusCall(receiver, message, arguments);
    public void makeSiteEntry()

### prepareCallSite

    return;
    public void prepareCallSite(java.lang.String message)

Groovy Documentation