text: /*
   * Copyright (c) 2014 airbug Inc. All rights reserved.
   *
   * All software, both binary and source contained in this work is the exclusive property
   * of airbug Inc. Modification, decompilation, disassembly, or any other means of discovering
   * the source code of this software is prohibited. This work is protected under the United
   * States copyright law and other international copyright treaties and conventions.
   */
  
  
  //-------------------------------------------------------------------------------
  // Annotations
  //-------------------------------------------------------------------------------
  
  //@Export('bugioc.ArgTag')
  
  //@Require('Class')
  //@Require('bugmeta.Tag')
  
  
  //-------------------------------------------------------------------------------
  // Context
  //-------------------------------------------------------------------------------
  
  require('bugpack').context("*", function(bugpack) {
  
      //-------------------------------------------------------------------------------
      // BugPack
      //-------------------------------------------------------------------------------
  
      var Class   = bugpack.require('Class');
      var Tag     = bugpack.require('bugmeta.Tag');
  
  
      //-------------------------------------------------------------------------------
      // Declare Class
      //-------------------------------------------------------------------------------
  
      /**
       * @class
       * @extends {Tag}
       */
      var ArgTag = Class.extend(Tag, {
  
          _name: "bugioc.ArgTag",
  
  
          //-------------------------------------------------------------------------------
          // Constructor
          //-------------------------------------------------------------------------------
  
          /**
           * @constructs
           * @private
           */
          _constructor: function() {
  
              this._super();
  
  
              //-------------------------------------------------------------------------------
              // Private Properties
              //-------------------------------------------------------------------------------
  
              /**
               * @private
               * @type {string}
               */
              this.argRef     = null;
  
              /**
               * @private
               * @type {*}
               */
              this.argValue   = null;
          },
  
  
          //-------------------------------------------------------------------------------
          // Getters and Setters
          //-------------------------------------------------------------------------------
  
          /**
           * @return {string}
           */
          getArgRef: function() {
              return this.argRef;
          },
  
          /**
           * @return {*}
           */
          getArgValue: function() {
              return this.argValue;
          },
  
  
          //-------------------------------------------------------------------------------
          // Public Methods
          //-------------------------------------------------------------------------------
  
          /**
           * @param {string} argRef
           * @return {ArgTag}
           */
          ref: function(argRef) {
              this.argRef = argRef;
              return this;
          },
  
          /**
           * @param {*} argValue
           * @return {ArgTag}
           */
          value: function(argValue) {
              this.argValue = argValue;
              return this;
          }
      });
  
  
      //-------------------------------------------------------------------------------
      // Static Methods
      //-------------------------------------------------------------------------------
  
      /**
       * @static
       * @return {ArgTag}
       */
      ArgTag.arg = function() {
          return new ArgTag();
      };
  
  
      //-------------------------------------------------------------------------------
      // Exports
      //-------------------------------------------------------------------------------
  
      bugpack.export('bugioc.ArgTag', ArgTag);
  });
  