00001 // +-------------------------------------------------------------------------+ 00002 // | I__n__t__e__L__i__b 0.6.10 development | 00003 // | Copyright (c) Andrey Vikt. Stolyarov <crocodil_AT_croco.net> 2000-2007. | 00004 // | | 00005 // | This is free software. The library part is available under | 00006 // | GNU LESSER GENERAL PUBLIC LICENSE v.2.1. | 00007 // | GNU LGPL v2.1 is found in docs/gnu_gpl2.txt, or at http://www.gnu.org | 00008 // | Please see also docs/readme.txt and visit http://www.intelib.org | 00009 // | | 00010 // | !!! THERE IS NO WARRANTY OF ANY KIND, NEITHER EXPRESSED NOR IMPLIED !!! | 00011 // +-------------------------------------------------------------------------+ 00012 00013 00014 00015 00016 #include <string.h> 00017 #include <ctype.h> 00018 00019 #include "lsymbol.hpp" 00020 00021 #include "lpackage.hpp" 00022 00024 // LExpressionPackage 00025 00026 IntelibTypeId 00027 LExpressionPackage::TypeId(&SExpressionHashPackage::TypeId); 00028 00029 LExpressionPackage::LExpressionPackage() 00030 : SExpressionHashPackage(TypeId) 00031 {} 00032 00033 LExpressionPackage::LExpressionPackage(const LPackage& par) 00034 : SExpressionHashPackage(TypeId, par) 00035 {} 00036 00037 LExpressionPackage::~LExpressionPackage() 00038 {} 00039 00040 SReference LExpressionPackage::CreateNewSymbolObject(const char *nm) const 00041 { 00042 return SReference(new LExpressionSymbol(nm)); 00043 } 00044 00046 // LExpressionPackageIntelib 00047 00048 LExpressionPackageIntelib::LExpressionPackageIntelib() 00049 : LExpressionPackage() 00050 { 00051 Import(TheLibraryProvidedSymbols.Quote); 00052 Import(TheLibraryProvidedSymbols.Function); 00053 Import(TheLibraryProvidedSymbols.Lambda); 00054 Import(TheLibraryProvidedSymbols.SymT); 00055 Import(TheLibraryProvidedSymbols.SymNil); 00056 }