Update ooo320-m1
[ooovba.git] / autodoc / source / ary / cpp / ca_def.cxx
blobbbf7664a998063be7d01f300edd404eb6cd06f32
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ca_def.cxx,v $
10 * $Revision: 1.3 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #include <precomp.h>
32 #include "ca_def.hxx"
35 // NOT FULLY DEFINED SERVICES
36 #include <ary/cpp/c_define.hxx>
37 #include <ary/cpp/c_macro.hxx>
38 #include <ary/loc/loc_file.hxx>
39 #include <ary/cpp/inpcontx.hxx>
44 namespace ary
46 namespace cpp
50 DefAdmin::DefAdmin(RepositoryPartition & io_myReposyPartition)
51 : aStorage(),
52 pCppRepositoryPartition(&io_myReposyPartition)
56 DefAdmin::~DefAdmin()
60 Define &
61 DefAdmin::Store_Define( const InputContext& i_rContext,
62 const String & i_sName,
63 const StringVector & i_rDefinition )
65 Define &
66 ret = *new Define( i_sName,
67 i_rDefinition,
68 i_rContext.CurFile().LeId() );
69 aStorage.Store_Define(ret);
70 return ret;
74 Macro &
75 DefAdmin::Store_Macro( const InputContext& i_rContext,
76 const String & i_sName,
77 const StringVector & i_rParams,
78 const StringVector & i_rDefinition )
80 Macro &
81 ret = *new Macro( i_sName,
82 i_rParams,
83 i_rDefinition,
84 i_rContext.CurFile().LeId() );
85 aStorage.Store_Macro(ret);
86 return ret;
89 const DefineEntity &
90 DefAdmin::Find_Def(De_id i_id) const
92 return aStorage[i_id];
95 DefsResultList
96 DefAdmin::AllDefines() const
98 return csv::make_range( aStorage.DefineIndex().Begin(),
99 aStorage.DefineIndex().End() );
102 DefsResultList
103 DefAdmin::AllMacros() const
105 return csv::make_range( aStorage.MacroIndex().Begin(),
106 aStorage.MacroIndex().End() );
113 } // namespace cpp
114 } // namespace ary