Ignore:
Timestamp:
May 18, 2015, 11:20:23 AM (9 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
Children:
51587aa
Parents:
a32b204
Message:

licencing: third groups of files

File:
1 edited

Legend:

Unmodified
Added
Removed
  • translator/SynTree/Initializer.cc

    ra32b204 r0dd3a2f  
     1//
     2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
     3//
     4// The contents of this file are covered under the licence agreement in the
     5// file "LICENCE" distributed with Cforall.
     6//
     7// Initializer.cc --
     8//
     9// Author           : Richard C. Bilson
     10// Created On       : Mon May 18 07:44:20 2015
     11// Last Modified By : Peter A. Buhr
     12// Last Modified On : Mon May 18 09:02:45 2015
     13// Update Count     : 2
     14//
     15
    116#include "Initializer.h"
    217#include "Expression.h"
    318#include "utility.h"
    4 
    519
    620Initializer::Initializer() {}
     
    923
    1024std::string Initializer::designator_name( Expression *des ) {
    11     if ( NameExpr *n = dynamic_cast<NameExpr *>(des) )
    12         return n->get_name();
    13     else
    14         throw 0;
     25        if ( NameExpr *n = dynamic_cast<NameExpr *>(des) )
     26                return n->get_name();
     27        else
     28                throw 0;
    1529}
    1630
     
    2135
    2236SingleInit::SingleInit( const SingleInit &other ) : value ( other.value ) {
    23     cloneAll(other.designators, designators );
     37        cloneAll(other.designators, designators );
    2438}
    2539
     
    2943
    3044void SingleInit::print( std::ostream &os, int indent ) {
    31     os << std::endl << std::string(indent, ' ' ) << "Simple Initializer: ";
    32     value->print( os, indent+2 );
     45        os << std::endl << std::string(indent, ' ' ) << "Simple Initializer: ";
     46        value->print( os, indent+2 );
    3347
    34     if ( ! designators.empty() ) {
    35         os << std::endl << std::string(indent + 2, ' ' ) << "designated by: "  ;
    36         for ( std::list < Expression * >::iterator i = designators.begin(); i != designators.end(); i++ )
    37             ( *i )->print(os, indent + 4 );
    38     }
     48        if ( ! designators.empty() ) {
     49                os << std::endl << std::string(indent + 2, ' ' ) << "designated by: "  ;
     50                for ( std::list < Expression * >::iterator i = designators.begin(); i != designators.end(); i++ )
     51                        ( *i )->print(os, indent + 4 );
     52        } // if
    3953}
    4054
    4155ListInit::ListInit( std::list<Initializer*> &_initializers, std::list<Expression *> &_designators )
    42     : initializers( _initializers ), designators( _designators ) {
     56        : initializers( _initializers ), designators( _designators ) {
    4357}
    4458
     
    4660
    4761ListInit *ListInit::clone() const {
    48     return new ListInit( *this );
     62        return new ListInit( *this );
    4963}
    5064
    5165void ListInit::print( std::ostream &os, int indent ) {
    52     os << std::endl << std::string(indent, ' ') << "Compound initializer:  ";
    53     if ( ! designators.empty() ) {
    54         os << std::string(indent + 2, ' ' ) << "designated by: [";
    55         for ( std::list < Expression * >::iterator i = designators.begin();
    56                     i != designators.end(); i++ ) {
    57             ( *i )->print(os, indent + 4 );
    58         }
     66        os << std::endl << std::string(indent, ' ') << "Compound initializer:  ";
     67        if ( ! designators.empty() ) {
     68                os << std::string(indent + 2, ' ' ) << "designated by: [";
     69                for ( std::list < Expression * >::iterator i = designators.begin();
     70                          i != designators.end(); i++ ) {
     71                        ( *i )->print(os, indent + 4 );
     72                } // for
    5973       
    60         os << std::string(indent + 2, ' ' ) << "]";
    61     }
     74                os << std::string(indent + 2, ' ' ) << "]";
     75        } // if
    6276
    63     for ( std::list<Initializer *>::iterator i = initializers.begin(); i != initializers.end(); i++ )
    64         (*i)->print( os, indent + 2 );
     77        for ( std::list<Initializer *>::iterator i = initializers.begin(); i != initializers.end(); i++ )
     78                (*i)->print( os, indent + 2 );
    6579}
     80// Local Variables: //
     81// tab-width: 4 //
     82// mode: c++ //
     83// compile-command: "make install" //
     84// End: //
Note: See TracChangeset for help on using the changeset viewer.