/usr/include/scilab/singlestruct.hxx is in scilab-include 6.0.1-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | /*
* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
* Copyright (C) 2011 - DIGITEO - Antoine ELIAS
*
* Copyright (C) 2012 - 2016 - Scilab Enterprises
*
* This file is hereby licensed under the terms of the GNU GPL v2.0,
* pursuant to article 5.3.4 of the CeCILL v.2.1.
* This file was originally licensed under the terms of the CeCILL v2.1,
* and continues to be available under such terms.
* For more information, see the COPYING file which you should have received
* along with this program.
*
*/
#ifndef __SINGLESTRUCT_HXX__
#define __SINGLESTRUCT_HXX__
#include <unordered_map>
#include <vector>
#include "internal.hxx"
#include "string.hxx"
namespace types
{
class EXTERN_AST SingleStruct : public InternalType
{
public :
SingleStruct();
~SingleStruct();
private :
SingleStruct(SingleStruct *_oListCopyMe);
public :
SingleStruct* clone();
inline ScilabType getType(void)
{
return ScilabSingleStruct;
}
inline ScilabId getId(void)
{
return IdSingleStruct;
}
bool isSingleStruct()
{
return true;
}
inline int getNumFields() const
{
return static_cast<int>(m_wstFields.size());
}
bool toString(std::wostringstream& ostr);
bool set(const std::wstring& _sKey, InternalType *_typedValue);
InternalType* get(const std::wstring& _sKey);
bool exists(const std::wstring& _sKey);
InternalType* insert(typed_list* _pArgs, InternalType* _pSource);
std::vector<InternalType*> extract(std::vector<std::wstring> & _stFields);
String* getFieldNames();
bool addField(const std::wstring& _sKey);
bool addFieldFront(const std::wstring& _sKey);
std::vector<InternalType *> & getData();
std::unordered_map<std::wstring, int> & getFields();
int getFieldIndex(const std::wstring& _field);
bool removeField(const std::wstring& _sKey);
bool operator==(const InternalType& it);
bool operator!=(const InternalType& it);
/* return type as string ( double, int, cell, list, ... )*/
virtual std::wstring getTypeStr() const
{
return L"singlestruct";
}
/* return type as short string ( s, i, ce, l, ... )*/
virtual std::wstring getShortTypeStr() const
{
return L"sst";
}
private :
std::unordered_map<std::wstring, int> m_wstFields;
std::vector<InternalType *> m_Data;
};
}
#endif /* !__SINGLESTRUCT_HXX__ */
|