<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE erlref SYSTEM "erlref.dtd">

<erlref>
  <header>
    <copyright>
      <year>1997</year><year>2016</year>
      <holder>Ericsson AB. All Rights Reserved.</holder>
    </copyright>
    <legalnotice>
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at
 
          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    
    </legalnotice>

    <title>asn1rt</title>
    <prepared>Kenneth Lundin</prepared>
    <responsible>Kenneth Lundin</responsible>
    <docno>1</docno>
    <approved>Kenneth Lundin</approved>
    <checked></checked>
    <date>97-10-04</date>
    <rev>A</rev>
    <file>asn1.sgml</file>
  </header>
  <module>asn1rt</module>
  <modulesummary>ASN.1 runtime support functions</modulesummary>
  <description>
    <warning>
      <p>
	All functions in this module are deprecated and will be
	removed in a future release.
      </p>
    </warning>
  </description>

  <funcs>

    <func>
      <name>decode(Module,Type,Bytes) -> {ok,Value}|{error,Reason}</name>
      <fsummary>Decodes from Bytes into an ASN.1 value.</fsummary>
      <type>
        <v>Module = Type = atom()</v>
        <v>Value = Reason = term()</v>
        <v>Bytes = binary</v>
      </type>
      <desc>
        <p>Decodes <c>Type</c> from <c>Module</c> from the binary <c>Bytes</c>.
          Returns <c>{ok,Value}</c> if successful.</p>
	<p>Use <c>Module:decode(Type, Bytes)</c> instead of this function.</p>
      </desc>
    </func>

    <func>
      <name>encode(Module,Type,Value)-> {ok,Bytes} | {error,Reason}</name>
      <fsummary>Encodes an ASN.1 value.</fsummary>
      <type>
        <v>Module = Type = atom()</v>
        <v>Value = term()</v>
        <v>Bytes = binary</v>
        <v>Reason = term()</v>
      </type>
      <desc>
        <p>Encodes <c>Value</c> of <c>Type</c> defined in the <c>ASN.1</c>
        module <c>Module</c>. Returns a binary if successful. To get
        as fast execution as possible, the encode function performs
        only the rudimentary test that input <c>Value</c> is a correct
        instance of <c>Type</c>. For example, the length of strings is
        not always checked.</p>
	<p>Use <c>Module:encode(Type, Value)</c> instead of this function.</p>
      </desc>
    </func>

    <func>
      <name>info(Module) ->  {ok,Info} | {error,Reason}</name>
      <fsummary>Returns compiler information about the Module.</fsummary>
      <type>
        <v>Module = atom()</v>
        <v>Info = list()</v>
        <v>Reason = term()</v>
      </type>
      <desc>
        <p>Returns the version of the <c>ASN.1</c> compiler that was
          used to compile the module. It also returns the compiler options
          that were used.</p>
	<p>Use <c>Module:info()</c> instead of this function.</p>
      </desc>
    </func>

    <func>
      <name>utf8_binary_to_list(UTF8Binary) ->  {ok,UnicodeList} | {error,Reason}</name>
      <fsummary>Transforms an UTF8 encoded binary to a unicode list.</fsummary>
      <type>
        <v>UTF8Binary = binary()</v>
        <v>UnicodeList = [integer()]</v>
        <v>Reason = term()</v>
      </type>
      <desc>
        <p>Transforms a UTF8 encoded binary
          to a list of integers, where each integer represents one
          character as its unicode value. The function fails if the binary
          is not a properly encoded UTF8 string.</p>
	<p>Use <seealso marker="stdlib:unicode#characters_to_list-1">unicode:characters_to_list/1</seealso> instead of this function.</p>
      </desc>
    </func>

    <func>
      <name>utf8_list_to_binary(UnicodeList) ->  {ok,UTF8Binary} | {error,Reason}</name>
      <fsummary>Transforms an unicode list to a UTF8 binary.</fsummary>
      <type>
        <v>UnicodeList = [integer()]</v>
        <v>UTF8Binary = binary()</v>
        <v>Reason = term()</v>
      </type>
      <desc>
        <p>Transforms a list of integers,
          where each integer represents one character as its unicode
          value, to a UTF8 encoded binary.</p>
	<p>Use <seealso marker="stdlib:unicode#characters_to_binary-1">unicode:characters_to_binary/1</seealso> instead of this function.</p>
      </desc>
    </func>

  </funcs>

</erlref>

