text: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  <!--NewPage-->
  <HTML>
  <HEAD>
  <!-- Generated by javadoc (build 1.6.0_65) on Thu Nov 21 18:21:34 PST 2013 -->
  <TITLE>
  GinModule
  </TITLE>
  
  <META NAME="date" CONTENT="2013-11-21">
  
  <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
  
  <SCRIPT type="text/javascript">
  function windowTitle()
  {
      if (location.href.indexOf('is-external=true') == -1) {
          parent.document.title="GinModule";
      }
  }
  </SCRIPT>
  <NOSCRIPT>
  </NOSCRIPT>
  
  </HEAD>
  
  <BODY BGCOLOR="white" onload="windowTitle();">
  <HR>
  
  
  <!-- ========= START OF TOP NAVBAR ======= -->
  <A NAME="navbar_top"><!-- --></A>
  <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
  <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
  <TR>
  <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
  <A NAME="navbar_top_firstrow"><!-- --></A>
  <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
    <TR ALIGN="center" VALIGN="top">
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
    </TR>
  </TABLE>
  </TD>
  <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
  </EM>
  </TD>
  </TR>
  
  <TR>
  <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  &nbsp;<A HREF="../../../../../com/google/gwt/inject/client/Ginjector.html" title="interface in com.google.gwt.inject.client"><B>PREV CLASS</B></A>&nbsp;
  &nbsp;<A HREF="../../../../../com/google/gwt/inject/client/GinModules.html" title="annotation in com.google.gwt.inject.client"><B>NEXT CLASS</B></A></FONT></TD>
  <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
    <A HREF="../../../../../index.html?com/google/gwt/inject/client/GinModule.html" target="_top"><B>FRAMES</B></A>  &nbsp;
  &nbsp;<A HREF="GinModule.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
  &nbsp;<SCRIPT type="text/javascript">
    <!--
    if(window==top) {
      document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
    }
    //-->
  </SCRIPT>
  <NOSCRIPT>
    <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
  </NOSCRIPT>
  
  
  </FONT></TD>
  </TR>
  <TR>
  <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
    SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
  <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
  </TR>
  </TABLE>
  <A NAME="skip-navbar_top"></A>
  <!-- ========= END OF TOP NAVBAR ========= -->
  
  <HR>
  <!-- ======== START OF CLASS DATA ======== -->
  <H2>
  <FONT SIZE="-1">
  com.google.gwt.inject.client</FONT>
  <BR>
  Interface GinModule</H2>
  <DL>
  <DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../com/google/gwt/inject/client/AbstractGinModule.html" title="class in com.google.gwt.inject.client">AbstractGinModule</A>, <A HREF="../../../../../com/google/gwt/inject/client/assistedinject/FactoryModule.html" title="class in com.google.gwt.inject.client.assistedinject">FactoryModule</A>, <A HREF="../../../../../com/google/gwt/inject/client/PrivateGinModule.html" title="class in com.google.gwt.inject.client">PrivateGinModule</A></DD>
  </DL>
  <HR>
  <DL>
  <DT><PRE>public interface <B>GinModule</B></DL>
  </PRE>
  
  <P>
  GIN counterpart of Guice's <code>Module</code>. A <code>GinModule</code>
   implementation is compiled both by the regular Java compiler and
   by the GWT compiler.
  
   <p>The regular-compiled version is used at GWT compile time as part
   of the implementation of the <code>Generator</code> that outputs the generated
   <code>Ginjector</code> class. Notably, the <code>Generator</code> calls the
   <code>configure</code> method on the module class.
  
   <p>The GWT-compiled version is used client-side at runtime. This is
   necessary to support provider methods. Important, the GWT client
   code never actually calls the <code>configure</code> method on the module class
   and it is eliminated as dead code by the compiler. So <code>configure</code>
   needs to be GWT compilable, but the resulting code will never execute.
  
   <p>Because <code>GinModule</code> classes need to compile as GWT code,
   all types that modules reference must be GWT translatable. This
   is a problem for types like <A HREF="http://google-guice.googlecode.com/svn/trunk/javadoc/com/google/inject/Key.html?is-external=true" title="class or interface in com.google.inject"><CODE>Key</CODE></A> and
   <A HREF="http://google-guice.googlecode.com/svn/trunk/javadoc/com/google/inject/TypeLiteral.html?is-external=true" title="class or interface in com.google.inject"><CODE>TypeLiteral</CODE></A>, since they normally
   reference <CODE>Type</CODE> instances and other untranslatable
   things. But since the <code>configure</code> method that uses them won't actually
   be executed, all we need is to satisfy the compiler. Thus, we can get away
   with using <code>super-source</code> to provide dummy stubs of <code>Key</code> and
   <code>TypeLiteral</code>.
  <P>
  
  <P>
  <HR>
  
  <P>
  
  <!-- ========== METHOD SUMMARY =========== -->
  
  <A NAME="method_summary"><!-- --></A>
  <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
  <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
  <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
  <B>Method Summary</B></FONT></TH>
  </TR>
  <TR BGCOLOR="white" CLASS="TableRowColor">
  <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
  <CODE>&nbsp;void</CODE></FONT></TD>
  <TD><CODE><B><A HREF="../../../../../com/google/gwt/inject/client/GinModule.html#configure(com.google.gwt.inject.client.binder.GinBinder)">configure</A></B>(<A HREF="../../../../../com/google/gwt/inject/client/binder/GinBinder.html" title="interface in com.google.gwt.inject.client.binder">GinBinder</A>&nbsp;binder)</CODE>
  
  <BR>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Contributes bindings and other configurations for this module to <code>binder</code>.</TD>
  </TR>
  </TABLE>
  &nbsp;
  <P>
  
  <!-- ============ METHOD DETAIL ========== -->
  
  <A NAME="method_detail"><!-- --></A>
  <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
  <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
  <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
  <B>Method Detail</B></FONT></TH>
  </TR>
  </TABLE>
  
  <A NAME="configure(com.google.gwt.inject.client.binder.GinBinder)"><!-- --></A><H3>
  configure</H3>
  <PRE>
  void <B>configure</B>(<A HREF="../../../../../com/google/gwt/inject/client/binder/GinBinder.html" title="interface in com.google.gwt.inject.client.binder">GinBinder</A>&nbsp;binder)</PRE>
  <DL>
  <DD>Contributes bindings and other configurations for this module to <code>binder</code>.
  <P>
  <DD><DL>
  </DL>
  </DD>
  </DL>
  <!-- ========= END OF CLASS DATA ========= -->
  <HR>
  
  
  <!-- ======= START OF BOTTOM NAVBAR ====== -->
  <A NAME="navbar_bottom"><!-- --></A>
  <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
  <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
  <TR>
  <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
  <A NAME="navbar_bottom_firstrow"><!-- --></A>
  <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
    <TR ALIGN="center" VALIGN="top">
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
    <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
    </TR>
  </TABLE>
  </TD>
  <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
  </EM>
  </TD>
  </TR>
  
  <TR>
  <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  &nbsp;<A HREF="../../../../../com/google/gwt/inject/client/Ginjector.html" title="interface in com.google.gwt.inject.client"><B>PREV CLASS</B></A>&nbsp;
  &nbsp;<A HREF="../../../../../com/google/gwt/inject/client/GinModules.html" title="annotation in com.google.gwt.inject.client"><B>NEXT CLASS</B></A></FONT></TD>
  <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
    <A HREF="../../../../../index.html?com/google/gwt/inject/client/GinModule.html" target="_top"><B>FRAMES</B></A>  &nbsp;
  &nbsp;<A HREF="GinModule.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
  &nbsp;<SCRIPT type="text/javascript">
    <!--
    if(window==top) {
      document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
    }
    //-->
  </SCRIPT>
  <NOSCRIPT>
    <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
  </NOSCRIPT>
  
  
  </FONT></TD>
  </TR>
  <TR>
  <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
    SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
  <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
  </TR>
  </TABLE>
  <A NAME="skip-navbar_bottom"></A>
  <!-- ======== END OF BOTTOM NAVBAR ======= -->
  
  <HR>
  
  </BODY>
  </HTML>
  