| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | 
							- <!DOCTYPE html>
 
- <html>
 
- <head>
 
-   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 
-   <title>The source code</title>
 
-   <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
 
-   <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
 
-   <style type="text/css">
 
-     .highlight { display: block; background-color: #ddd; }
 
-   </style>
 
-   <script type="text/javascript">
 
-     function highlight() {
 
-       document.getElementById(location.hash.replace(/#/, "")).className = "highlight";
 
-     }
 
-   </script>
 
- </head>
 
- <body onload="prettyPrint(); highlight();">
 
-   <pre class="prettyprint lang-js"><span id='Ext-data-reader-Array-method-constructor'><span id='Ext-data-reader-Array'>/**
 
- </span></span> * @author Ed Spencer
 
-  * @class Ext.data.reader.Array
 
-  * 
 
-  * <p>Data reader class to create an Array of {@link Ext.data.Model} objects from an Array.
 
-  * Each element of that Array represents a row of data fields. The
 
-  * fields are pulled into a Record object using as a subscript, the <code>mapping</code> property
 
-  * of the field definition if it exists, or the field's ordinal position in the definition.</p>
 
-  * 
 
-  * <p><u>Example code:</u></p>
 
-  * 
 
- <pre><code>
 
- Employee = Ext.define('Employee', {
 
-     extend: 'Ext.data.Model',
 
-     fields: [
 
-         'id',
 
-         {name: 'name', mapping: 1},         // "mapping" only needed if an "id" field is present which
 
-         {name: 'occupation', mapping: 2}    // precludes using the ordinal position as the index.        
 
-     ]
 
- });
 
- var myReader = new Ext.data.reader.Array({
 
-     model: 'Employee'
 
- }, Employee);
 
- </code></pre>
 
-  * 
 
-  * <p>This would consume an Array like this:</p>
 
-  * 
 
- <pre><code>
 
- [ [1, 'Bill', 'Gardener'], [2, 'Ben', 'Horticulturalist'] ]
 
- </code></pre>
 
-  * 
 
-  * @constructor
 
-  * Create a new ArrayReader
 
-  * @param {Object} meta Metadata configuration options.
 
-  */
 
- Ext.define('Ext.data.reader.Array', {
 
-     extend: 'Ext.data.reader.Json',
 
-     alternateClassName: 'Ext.data.ArrayReader',
 
-     alias : 'reader.array',
 
-     // For Array Reader, methods in the base which use these properties must not see the defaults
 
-     totalProperty: undefined,
 
-     successProperty: undefined,
 
- <span id='Ext-data-reader-Array-method-createFieldAccessExpression'>    /**
 
- </span>     * @private
 
-      * Returns an accessor expression for the passed Field from an Array using either the Field's mapping, or
 
-      * its ordinal position in the fields collsction as the index.
 
-      * This is used by buildExtractors to create optimized on extractor function which converts raw data into model instances.
 
-      */
 
-     createFieldAccessExpression: function(field, fieldVarName, dataName) {
 
-             // In the absence of a mapping property, use the original ordinal position
 
-             // at which the Model inserted the field into its collection.
 
-         var index  = (field.mapping == null) ? field.originalIndex : field.mapping,
 
-             result;
 
-         if (typeof index === 'function') {
 
-             result = fieldVarName + '.mapping(' + dataName + ', this)';
 
-         } else {
 
-             if (isNaN(index)) {
 
-                 index = '"' + index + '"';
 
-             }
 
-             result = dataName + "[" + index + "]";
 
-         }
 
-         return result;
 
-     }
 
- });
 
- </pre>
 
- </body>
 
- </html>
 
 
  |