code: public void setBody(/* @Nullable */ JvmExecutable logicalContainer, /* @Nullable */ XExpression expr) {
  		if (logicalContainer == null || expr == null)
  			return;
  		removeExistingBody(logicalContainer);
  		associator.associateLogicalContainer(expr, logicalContainer);
  	}
docs: Sets the given {@link JvmExecutable} as the logical container for the given {@link XExpression}.
  This defines the context and the scope for the given expression. Also it defines how the given JvmExecutable can be executed.
  For instance {@link org.eclipse.xtext.xbase.compiler.JvmModelGenerator} automatically translates any given {@link XExpression}
  into corresponding Java source code as the body of the given {@link JvmExecutable}.
  
  @param logicalContainer
  the {@link JvmExecutable} the expression is associated with. Can be <code>null</code> in which case this
  function does nothing.
  @param expr
  the expression. Can be <code>null</code> in which case this function does nothing.