AddPermanent - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Cache

  

AddPermanent

  

add a permanent entry to the cache table

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

AddPermanent( cache, key, value )

Parameters

cache

-

cache table or procedure: the object in which to insert the entry

key

-

list: the key to add

value

-

anything: the value to associate with key

Description

• 

The AddPermanent command creates a permanent entry associating key with value in a cache table.  The cache table can be given directly as cache, or cache can refer to a procedure that has, or can have, a cache remember table.  If such a procedure is given and it has a cache remember table, the permanent entry is inserted into that table. Otherwise, a new cache table is created, installed as the procedure's remember table and the permanent entry is inserted into that table.

• 

To handle an expression sequence as a key, key must be given in a list. The actual key used for the entry is op(key).

• 

If more than one argument is passed after key, then an expression sequence containing those arguments is used as value.

• 

Assigning directly into a cache table, using the cache[key] := value notation, creates a temporary entry.  Calling AddPermanent is the only way to create a permanent entry into a cache table.

• 

To remove a permanent entry from a cache table use RemovePermanent.

• 

Creating a permanent entry for a key that already has a temporary entry is not an error.  In this case, the temporary entry is used.

• 

For more information on cache tables, see Cache Package.

Examples

c1Cache

c1Cache512

(1)

c1ab

c1ab

(2)

Cache:-AddPermanentc1,x,y

Cache:-AddPermanentc1,y,z

evalc1

Cache512,temporary=a=b,permanent=y=z,x=y

(3)

p := proc(x,y) option cache; x+y; end proc;

pprocx,yoptioncache;x+yend proc

(4)

p1,1

2

(5)

Cache:-AddPermanentp,2,2,8

Cache:-AddPermanentp,1,2,5

p2,2

8

(6)

p1,2

5

(7)

Cache:-AddPermanentp,3,3,5,6,7

p2,2

8

(8)

op4,evalp

Cache512,temporary=1,1=2,permanent=1,2=5,2,2=8,3,3=5,6,7

(9)

See Also

Cache

Cache Package

Cache[AddTemporary]

Cache[PermanentEntries]

Cache[PermanentIndices]

Cache[RemovePermanent]

Cache[RemovePermanent]

Cache[RemoveTemporary]

Cache[RemoveTemporary]

Cache[Resize]

Cache[TemporaryEntries]

Cache[TemporaryIndices]

option cache