~ubuntu-branches/ubuntu/trusty/plee-the-bear/trusty-proposed

« back to all changes in this revision

Viewing changes to bear-engine/core/src/engine/script/node_parser/code/node_parser_argument_list.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Julien Jorge, Julien Jorge
  • Date: 2010-11-17 20:13:34 UTC
  • mfrom: (6.1.1 sid)
  • Revision ID: james.westby@ubuntu.com-20101117201334-o4dp7uq437to7oxb
Tags: 0.5.1-1
[ Julien Jorge ]
* New upstream release (Closes: #565062, #546514).
* Add armhf architecture (Closes: #604689).
* Remove patches integrated upstream: rpath-editors.diff, rpath-game.diff,
  editors-menu-section.diff.
* Bump the Standard-Version, no changes.
* Update my email address.
* Set build dependency of libclaw to 1.6.0.
* Add the missing ${misc:Depends} in debian/control.
* List gettext translations in bear-factory.install and plee-the-bear.install.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
  Bear Engine
 
3
 
 
4
  Copyright (C) 2005-2010 Julien Jorge, Sebastien Angibaud
 
5
 
 
6
  This program is free software; you can redistribute it and/or modify it
 
7
  under the terms of the GNU General Public License as published by the
 
8
  Free Software Foundation; either version 2 of the License, or (at your
 
9
  option) any later version.
 
10
 
 
11
  This program is distributed in the hope that it will be useful, but WITHOUT
 
12
  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 
13
  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 
14
  more details.
 
15
 
 
16
  You should have received a copy of the GNU General Public License along
 
17
  with this program; if not, write to the Free Software Foundation, Inc.,
 
18
  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
19
 
 
20
  contact: plee-the-bear@gamned.org
 
21
 
 
22
  Please add the tag [Bear] in the subject of your mails.
 
23
*/
 
24
/**
 
25
 * \file node_parser_argument_list.cpp
 
26
 * \brief Implementation of the bear::engine::node_parser_argument_list class.
 
27
 * \author Julien Jorge
 
28
 */
 
29
#include "engine/script/node_parser/node_parser_argument_list.hpp"
 
30
 
 
31
#include "engine/script/method_call.hpp"
 
32
#include "engine/script/script_grammar.hpp"
 
33
#include "engine/script/node_parser/node_parser_argument.hpp"
 
34
 
 
35
/*----------------------------------------------------------------------------*/
 
36
/**
 
37
 * \brief Parse a node of type argument_list.
 
38
 * \param call The method call for which we set the arguments.
 
39
 * \param node Node to parse.
 
40
 */
 
41
void bear::engine::node_parser_argument_list::parse_node
 
42
( method_call& call, const tree_node& node ) const
 
43
{
 
44
  std::vector<std::string> args;
 
45
  node_parser_argument parser;
 
46
  std::string val;
 
47
 
 
48
  if ( node.value.id() == script_grammar::id_argument_list )
 
49
    {
 
50
      for (std::size_t i=0; i!=node.children.size(); ++i)
 
51
        {
 
52
          parser.parse_node(val, node.children[i]);
 
53
          args.push_back(val);
 
54
        }
 
55
    }
 
56
  else
 
57
    {
 
58
      parser.parse_node(val, node);
 
59
      args.push_back(val);
 
60
    }
 
61
 
 
62
  call.set_arguments(args);
 
63
} // node_parser_argument_list::parse_node()